मैं सभी फ़ाइलों को एक ही निर्देशिका में नाम बदलना चाहता हूं, लेकिन केवल txt-files जो एक के साथ समाप्त होती हैं D
।
यहाँ मैं एक बैच में कोशिश की है ... लेकिन दोनों काम नहीं किया।
----- try1 -----
@echo off
set Quelle="C:\temp\TEST\IN\"
Set DateiFilter="*D.txt"
for /r %Quelle% %%i in (%DateiFilter%) do rename %%i %%~niI.txt
end
----- try2 -----
@echo on
setlocal enableDelayedExpansion
set Quelle="C:\temp\TEST\IN\"
Set DateiFilter="*.txt"
set y="D"
set z="I"
for /r %Quelle% %%i in (%DateiFilter%) do (set x=%%i rename "%%i" "!x:D.txt=I.txt!")
pause
end
धन्यवाद! :-) मैंने इसे प्रारूपित किया था लेकिन इसने मेरी गाड़ी के रिटर्न को नहीं पहचाना। क्षमा करें;)
—
जेनिफर
+1 महान पहला प्रश्न। क्या आप इस बात की पुष्टि कर सकते हैं कि "काम नहीं किया" से आपका क्या मतलब है। क्या उन्होंने बिल्कुल नकल की, कुछ भी कॉपी नहीं किया, क्या सभी फाइलें कॉपी की गईं?
—
डेव
आप %% f में (* D.txt) का नाम बदलकर "%% f" "%% ~ newName.txt" करना चाहते हैं
—
डेव
शुक्रिया @DaveRook! यह अंत में एक डी के साथ फाइलों में "I" को सही ढंग से जोड़ने के साथ इसका नाम बदल देता है। लेकिन मैं डी को कैसे रिप्लाई कर सकता हूं? 1234D.txt -> 1234I.txt (D का स्थान I मिलता है) 1234X.txt -> 1234X.txt (वही रहता है) आप धन्यवाद :)
—
jennifer
किया गया ... यह कार्य करता है: @echo off pushd "C: \ temp \ TEST \ IN \" setlocal enableelayedexpansion के लिए / f "delims =" %% a ('dir "* D.txt / b / ad ') do (सेट "नाम = %% ~ ना" सेट "नाम =! नाम: ~ 0, -1! मैं" %% "a"! नाम! %% ~ xa ") popd ठहराव
—
jennifer