मैं एक साधारण बैच का नाम बदलने की कोशिश करने के लिए पूरी सुबह कोशिश कर रहा हूं। इस तरह की कोशिश करने का यह मेरा पहला मौका है। मैं उपयोग करने की कोशिश कर रहा For /R
हूं ताकि मेरी कमांड सबफ़ोल्डर्स के माध्यम से पुन: हो जाए लेकिन यह काम नहीं कर रहा है।
मेरा कोड इस तरह दिखता है:
FOR /R %%a in (.) do REN "i.JPG" "inlet.JPG"
REN
मूल निर्देशिका में काम कर रहा है, लेकिन उपनिर्देशिकाओं के माध्यम से पुनरावृत्ति नहीं कर रहा है। क्या कोई देख सकता है कि मैं क्या गलत कर रहा हूं?
धन्यवाद।
धन्यवाद। मैंने फ़ाइल नाम तय किया और जोड़ा
—
पलक
%%a
। यह समस्या को हल करने के लिए लग रहा था। क्या आप मैच निर्देशिका का मतलब है?
डिफ़ॉल्ट रूप से
—
AFH
for
फ़ाइलों से मेल खाता है, निर्देशिका नहीं, जब तक आप जोड़ते नहीं हैं /d
: for /?
अधिक विवरण के लिए देखें।
आगे की जांच से पता चलता है कि इसके
—
AFH
.
बिना मिलान किया जाएगा /d
- मुझे पूरी तरह से समझ में नहीं आता कि क्यों। क्या %%a\i.JPG
विस्तार है SubDirName\.\i.JPG
। एक neater समाधान यह है FOR /R %%a in (i.JPG) do REN "%%a" "inlet.JPG"
: यह उपनिर्देशिकाओं की त्रुटियों को i.JPG
उन में कोई फ़ाइल नहीं होने से बचाता है, खासकर यदि आप बैच फ़ाइल को फिर से चलाना चाहते हैं।
@eyerah क्या आप निर्दिष्ट कर सकते हैं कि आप वास्तव में बैच फ़ाइल के साथ क्या करना चाहते हैं? क्या केवल एक ही फ़ाइल या एक ही नाम वाली कई फ़ाइल है?
—
बिसवाप्रियो
/d
विकल्प जोड़ना होगाfor
। इसके अलावा, आपको कमांड स्रोत फ़ाइल नाम"%%a\i.JPG"
में उपयोग करने की आवश्यकता हैren
।