शैल गीक एक बार में कई फाइलों का नाम बदलें
मान लें कि आपके पास गलत फ़ाइल नामों वाली सैकड़ों फ़ाइलों के साथ एक निर्देशिका है, और आप हर फ़ाइलनाम को बदलना चाहते हैं परीक्षा साथ में ठेस. (यह एक आकस्मिक उदाहरण है)। हम आसानी से इसे “bash” में कमांड के साथ bash में कर सकते हैं, थोड़ा सा bash अच्छाई के साथ। आज हम सीखेंगे कि लूप के लिए वैरिएबल में टेक्स्ट को कैसे बदला जाए.
"के लिए" आदेश इस तरह काम करता है:
में var के लिए; $ var; किया;
आप प्रतिस्थापित कर सकते हैं किसी भी फ़ाइल मिलान पैटर्न, जैसे कि * या * .txt, और आप प्रतिस्थापित कर सकते हैं किसी भी linux कमांड के साथ। कमांड को फाइल मिलान पैटर्न द्वारा मिलान की गई प्रत्येक फाइल पर अनुक्रम में चलाया जाएगा.
यह वह जगह है जहाँ bash वैरिएबल हैंडलिंग इसे और भी दिलचस्प बनाता है। "Mv $ var" जैसा कुछ करने के बजाय, हम इस सिंटैक्स का उपयोग करके फ़ाइल नाम में पाठ को बदल सकते हैं:
$ Var / originaltext / replacetext
तो अब, यदि हम अपनी निर्देशिका पर इस कमांड को चलाते हैं:
f में * के लिए; mv $ f $ f / test / prod; किया
* द्वारा मिलान की गई प्रत्येक फ़ाइल के लिए, bash इसके समान एक कमांड निष्पादित करेगा:
mv test.config prod.config
मैंने पाया है कि शेल का ज्ञान सर्वरों को प्रशासित करते समय या आपके फ़ाइल संग्रह को प्रबंधित करने के लिए अमूल्य है, और इससे मुझे कुछ घंटों की बचत होती है जो अन्यथा मैनुअल काम के लिए होता.
और हाँ, मुझे लगता है कि कई उपकरण हैं जो कई फ़ाइलों के नामकरण को पूरा कर सकते हैं.