इस लेख में, हम बताते हैं कि Linux में दो अलग-अलग विधियों का उपयोग करके किसी फ़ाइल, या एकाधिक फ़ाइलों का नाम कैसे बदलें।
आइए फ़ाइलों का नाम बदलने, mv और rename के उपयोग, और हम विशिष्ट उपकरणों का उपयोग क्यों करते हैं, में खुदाई करें।
mv के साथ फ़ाइलों का नाम बदलना – अब अनुशंसित विधि नहीं
आपके पास एक वेब निर्देशिका है जो किसी तरह, एक्सटेंशन खराब हो गए। हम अपने उदाहरण के लिए ब्लॉग की फ़ाइलों का उपयोग करने जा रहे हैं।
ping www.linuxscrew.com #Test connectivity first. wget -m www.linuxscrew.com #Mirror on
हम अब एक मिरर्ड वेबसाइट के गर्वित मालिक हैं। आइए इसे तोड़ें।

Linux Shell – Amp Files
वहां हमारे पास बहुत सारे ?amp फ़ाइलें हैं, शर्म की बात है कि हम उन सभी को .html फ़ाइलों में तोड़ चुके हैं। और लगता है कि हमारे पास वहां कुछ अतिरिक्त भी हैं। अब आइए पेज निर्देशिका में जाएं, और सब कुछ .html फ़ाइल में बदलने की अपनी गलती को ठीक करें। इंटरनेट मुझे बताता है कि एक साधारण “mv *[extension1] *[extension2]” मुझे वह दिला देगा जो मैं चाहता हूं।

mv Error
क्या आप उस पर विश्वास करेंगे, एक त्रुटि। mv कमांड अपेक्षा के अनुरूप कैसे काम नहीं कर सकता? आइए स्थानीय डेस्कटॉप पर प्रयास करें, Pop_OS। हमारे पास दो खाली .html फ़ाइलें हैं। आइए उन्हें .pdf में ले जाएं।

mv Error
वही त्रुटि। पता चलता है, चीजें बदलती हैं, और हम चीजों को करने का तरीका अप्रचलित हो जाता है। बहुत कुछ इस तरह जैसे ifconfig अप्रचलित है, और हम में से अधिकांश को ip a या ip r पर जाना चाहिए। एड्रेस और रूट। एक विशिष्ट उपकरण का गैर-इच्छित तरीके से उपयोग करना बाद में प्रक्रियाओं को तोड़ सकता है। यह एक अलग साबुनबॉक्स है एक अलग लेख के लिए।
इसके बजाय, हमें एक विशिष्ट उद्देश्य के लिए विशिष्ट उपकरण का उपयोग करना चाहिए। इस मामले में, mv के बजाय rename। यदि आप फ़ाइलों का नाम बदलने के लिए mv का उपयोग करना चाहते हैं, तो इसे संयम से और एकल आइटम के लिए उपयोग करें।
rename के साथ एकाधिक फ़ाइलों का नाम बदलना
हमने पहले से ही एक मजबूत मास फ़ाइल नाम बदलने के लिए दो उपकरणों को संयोजित करने का मामला दिखाया है।
find . -depth -type f -name "*?amp" -execdir rename ?amp .html {} \;
विकल्पों के माध्यम से चलना।
- पहला वाला, -depth हमें चाइल्ड आइटम को तोड़ने से रोकता है क्योंकि यह निर्देशिका के माध्यम से चलता है।
- हमने -type f (file) निर्दिष्ट किया ताकि यह इस उपयोग केस के लिए न टूटे। लेकिन, हम अपने ऑपरेशन में मजबूत होना चाहते हैं। हम वैसे भी depth शामिल करेंगे।
- -name हमें यह निर्दिष्ट करने की अनुमति देता है कि हम क्या ढूंढ रहे हैं और इसे -execdir के साथ rename को फॉरवर्ड करें।
- फिर हम निर्दिष्ट करते हैं कि हम पैटर्न ?amp को .HTML से बदलने के लिए ढूंढ रहे हैं।
- find कमांड से खींची गई हर चीज़ से अंतिम विकल्प भरें।
सरल! -ish। आइए पीछे हटें, और साधारण rename फ़ंक्शन को देखें। यहां कुछ लॉग हैं, आइए एक का नाम बदलें।

Log files
एकल फ़ाइलों का नाम बदलना
एकल फ़ाइलों के लिए यह “आसान” है mv का उपयोग करने के बजाय rename का उपयोग करने के लिए।

mv Command to Move Files
वहां, फ़ाइल का नाम बदल दिया गया। यदि आप rename का उपयोग करना चाहते हैं:
rename '' "`date +%Y-%m-%d`"- cloud-init.log
और अपने आप को कुछ समय बचाने के लिए, आप डेट को वेरिएबल के रूप में स्टोर कर सकते हैं।
date="`date +%Y-%m-%d`"
आप देखेंगे कि mv के बजाय rename का उपयोग करने से ज्यादा अतिरिक्त वर्कलोड नहीं होता है। बस पहले एक्सप्रेशन फ़िल्टर को खाली परिणाम से बदलें।
फ़ाइलनामों में तारीख जोड़ना

Appending date to filenames
वहां। फ़ाइलनाम तारीख के साथ जोड़े गए। अच्छा और सरल।
निष्कर्ष
फ़ाइलों का नाम बदलना एक सरल कार्य है। निर्देशिकाओं का नाम बदलना सीखें या अधिक दिन-प्रतिदिन कार्यों के लिए हमारे अन्य लेख देखें।