कमांड प्रॉम्प्ट में फ़ाइलों का एक गुच्छा कैसे बदला जाता है?


7

मुझे फ़ाइल नाम की समस्या है। मैं जिस बेवकूफी भरे कैमरे का इस्तेमाल कर रहा हूं, वह इतनी बार ऑटोनम्बर सीक्वेंस को रीसेट करता है और इसलिए अगर मैं कोशिश करूं और एक ही फाइल में ढेर सारी तस्वीरें डालूं तो मुझे बहुत सारे संघर्ष हो रहे हैं।

मुझे पता है कि उन सभी का नाम बदलने का एक तरीका निम्नलिखित है:

1.jpg, 2.jpg, 3.jpg। । । 2000.jpg, आदि ...

दुर्भाग्यवश, मैं उस पीढ़ी में से हूं, जिसने कभी विंडोज के इस्तेमाल से पहले डॉस का इस्तेमाल नहीं किया। मैंने ऐसा करने के लिए एक ऐप खोजने की कोशिश की है, लेकिन वे काफी दयनीय हैं, इसलिए मैं इसे या तो विंडोज .cmd या सिर्फ प्लेन .bat में करना चाहता हूं (यही वह जगह है जहां मुझे फाइलों पर कुछ अच्छा नियंत्रण मिला)। किसी को भी कोड के साथ मेरी मदद कर सकते हैं?


4
Windows कंसोल विंडो का MS-DOS से कोई लेना-देना नहीं है।
कैट प्लस प्लस

बहुत कम लोग हैं जो बैच फ़ाइलों "कोड" पर विचार करेंगे।
मार्क रैनसम

1
@ आदेशों को छोड़कर। लगभग सभी कमांड DOS की तरह ही हैं, कुछ नए को छोड़कर जो Windows में जोड़े गए थे
Nate Koppenhaver

क्या आपने स्वयं कोई शोध प्रयास किया?
डेव

जवाबों:


3

मैं 80 के दशक के मध्य से कमांड लाइन को पसंद कर रहा हूं, लेकिन मुझे यह स्वीकार करना होगा कि यह एक ऐसा क्षेत्र है, जहां मैं हमेशा रेनेम-इट पर भरोसा करता हूं ! मुझे पता है कि आप डॉस चाहते हैं, लेकिन मैं इसे सिर्फ एक मामले में छोड़ दूंगा क्योंकि कोई इसके बारे में नहीं सुनता है।

ऐसे समय में जब मुझे व्यक्तिगत फ़ाइलों (आमतौर पर समूहों में) पर अत्यधिक नियंत्रण की आवश्यकता होती है, मैंने बैच फ़ाइल बनाने के लिए एक स्प्रेडशीट का उपयोग किया है। इस स्थिति में, मैं एक फ़ाइल में टेक्स्ट नामों को इकट्ठा करने के लिए डीआईआर / बी का उपयोग करता हूं, उन्हें एक कॉलम में पेस्ट करता हूं, अंतिम कॉलम में नाम बदलने की कमांड का निर्माण करता हूं (इस मामले में डी) फिर उस कॉलम को एक .BAT फाइल में पेस्ट करें और चलाएं।

यहां छवि विवरण दर्ज करें


12

निम्नलिखित बैच फ़ाइल आप क्या चाहते हैं:

@echo off
setlocal EnableDelayedExpansion
set i=0
for %%a in (*.jpg) do (
    set /a i+=1
    ren "%%a" "!i!.new"
)
ren *.new *.jpg

.newफ़ाइलों को संसाधित होने से रोकने के लिए पहले एक्सटेंशन के साथ नाम बदल दिया जाता है और फिर .jpgअंत में नाम बदल दिया जाता है ।


3

आप ReNamer का उपयोग कर सकते हैं और अपने इच्छित किसी भी तार्किक नियमों को परिभाषित कर सकते हैं। हटाएं, बदलें, क्लीनअप, Rexx, मेटा टैग डालें, यहां तक ​​कि अपने कस्टम नियम को स्क्रिप्ट करें।

नीचे डिजिटल कैमरे से छवियों के अनुक्रमों के नाम बदलने के नियमों का एक उदाहरण है:

  1. हटाएं: स्थिति 1 से अंत तक हटाएं (एक्सटेंशन छोड़ें)
  2. सम्मिलित करें: प्रत्यय के रूप में "नया नाम" डालें (एक्सटेंशन छोड़ें)
  3. सीरियलाइज़ करें: 1 स्टेप 1 रिपीट 1 से सीरीज़ इन्क्रीमेंटल और पैड 3 से सफ़िक्स के रूप में लें (स्किप एक्सटेंशन)

यहां छवि विवरण दर्ज करें


1

यह वही करेगा जो आप कमांड लाइन से चाहते हैं, बैच फ़ाइल का उपयोग करते हुए:

@echo off
SET COUNT=1
SET PREFIX=Photos
FOR /f "tokens=*" %%G IN ('dir /b *.jpg') DO (call :renum "%%G")
GOTO :eof

:renum
 ren %1 %PREFIX%_%count%.jpg
 set /a count+=1
 GOTO :eof

SS4 पर कुछ उदाहरण कोड के आधार पर ।


0

वास्तव में एक प्रोग्रामिंग सवाल नहीं है, या बल्कि ऐसा कुछ है जो किसी भी तरह से सादे विंडोज़ यूआई के माध्यम से हल किया जा सकता है। जहां तक ​​मुझे पता है, यह केवल विंडोज 7 पर काम करता है, लेकिन यदि आप फ़ाइलों का एक गुच्छा चुनते हैं, और आप F2 दबाते हैं, या राइट-क्लिक करें -> नाम बदलें, तो आप पहले वाले का नाम बदल सकते हैं, और बाकी को समान नाम मिलेगा , (1), (2), (3) इत्यादि के साथ। फ़ाइल एक्सटेंशन अपरिवर्तित रहते हैं।


0

यदि आपका कैमरा जानकारी (अक्सर EXIF ​​टैग) के साथ फ़ोटो को टैग करता है, और आपके कैमरे की घड़ी कम से कम लगभग सही है, तो आप उस डेटा का उपयोग करने के लिए किसी भी विविध फ़ाइल का उपयोग करने वाली उपयोगिताओं का उपयोग कर सकते हैं (और फ़ोल्डरों में सॉर्ट करने के लिए, यदि आप चाहते हैं अपनी तस्वीरों को उनके टाइमस्टैम्प द्वारा पसंद करें।

exiv2 एक कमांड लाइन उपयोगिता है जो काम कर सकती है, और den4b का ReNamer एक GUI उपयोगिता है जो काम भी करेगी। ReNamer एक सामान्य उद्देश्य रेनमर है, यह विशिष्ट फोटो नहीं है। exiv2 मुख्य रूप से एक फोटो टैग हेरफेर टूल है जो नामकरण भी करता है।


नहींं, कैमरा बहुत बेवकूफाना मॉडल था। यह सभी समय, तिथियों को खो देता है, और सभी टैग गड़बड़ हो जाते हैं :(
user1001652

0

यह GUI ऐप एक अनुक्रमिक फ़ाइल 01,02,03 या 0102,0103,0104 नामकरण करेगा। यह बहुत पुराना है, मुझे अब लेखकों की साइट नहीं मिल रही है।

http://www.mediafire.com/?71797x4vuv1u6mo (156k zip 300k एकल निष्पादन योग्य पोर्टेबल ऐप जिसे renmfl.exe कहा जाता है)

मैं इसे क्रम में स्ट्रिंग करने के लिए कई फ़ाइलों का नाम बदलने के लिए उपयोग करता हूं। यह सॉर्ट किए गए लोड के रूप में चयनित किया जाएगा, फिर भरी हुई फ़ाइलों पर सरल अनुक्रमिक नंबरिंग का उपयोग करें (संपूर्ण फ़ोल्डर का चयन करते समय CTRL A का उपयोग करें ताकि सभी फाइलें क्रम में हों)। यह एक विशिष्ट संख्या में भी शुरू होगा।

यह फ़ाइल लोडिंग विधि के कारण सभी फ़ाइल नामों (एक समय में फ़ाइलों की मात्रा) की लंबाई में सीमित है । यह नंबरिंग (केवल वर्णानुक्रम) से पहले फाइलों के मैनुअल रिसॉर्ट की अनुमति नहीं देगा। आप एक टैग भी लगा सकते हैं लेकिन मैंने उस सुविधा का कभी उपयोग नहीं किया। YoSemiPic401, YoSemiPic402, YoSemiPic403। आदि

यह केवल एक प्रकार का नामकरण करता है, लेकिन उस प्रकार के लिए यह इसे अच्छी तरह से करता है, यह सीमाओं को छोड़ देता है, मैं इसके लिए एक अलग कार्यक्रम का उपयोग करता हूं।


"शानदार बैच रेनमर" जो लगभग 10 गुना अधिक जटिल है, एपेंड सेक्शन में क्रमिक क्रमांकन जोड़ देगा, या यादृच्छिक, या किसी और चीज के बारे में जो आप सोच सकते हैं।

http://www.mediafire.com/?vxgmac394cx03te (350k ज़िप 666k पोर्टेबल निष्पादन योग्य, ई-मेल वेयर)

इसमें एक अनुक्रमिक सेट करने के लिए, उन्नत मोड में जाने के लिए F2 को हिट करें, [x] इसे चालू करने के लिए एपेंड करें, एपेंड टेक्स्ट प्रविष्टि बॉक्स में राइट क्लिक करें, एक ऐसी चीज है जिसमें आप जोड़ सकते हैं। उनमें से एक क्रमबद्ध संख्या है।


-1

प्रोग्रामिंग का सवाल नहीं।

REN कमांड का उपयोग करें ।

http://ss64.com/nt/ren.html


हां, खेद है कि यह पूरी तरह से इस साइट के पीछे के विचार से संबंधित नहीं है। @Nick ब्रूक्स, हाँ, लेकिन मैं एक बड़ी संख्या के साथ फ़ाइलों का नाम बदलने के लिए कोई रास्ता नहीं ढूँढ सकता। मैं इकट्ठा मैं एक बैच फ़ाइल लिखने के लिए होता है, लेकिन मैं गंभीर रूप से कमी के बारे में हूँ। इसमें नॉट कोडिंग नोलडेज है, जहां थोड़ी सी भी प्रोग्रामिंग आती है: D
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.