फ़ाइलों का नाम बदलने पर कैप्चर समूहों को अनदेखा किया जाता है


10

मेरे पास इस प्रारूप में कई फाइलें हैं:

##। ## - फ़ाइल का नाम .mp4

मैं उनका नाम बदलना चाहता हूं:

रों ## ई ##। mp4

मैंने ये ढूंढ निकाला:

नाम बदलें -n "s / ^ (\ d {2}) \ ((d d {2})। * / s $ 1e $ 2.mp4 /"

जब मैंने इसे http://regexr.com/ पर परीक्षण किया तो यह काम करता है, लेकिन जब मैं अपने Ubuntu 12.04 इंस्टालेशन पर कमांड चलाता हूं, तो मेरी सभी फाइलें फिर से चालू हो जाती हैंse.mp4

तो ऐसा लगता है कि समूहों को नजरअंदाज किया जा रहा है या नहीं डाला जा रहा है या उन लाइनों के साथ कुछ है। क्या मुझे कुछ स्पष्ट याद आ रहा है या कुछ और चल रहा है?

मैंने pyRenamer का उपयोग करके समाप्त कर दिया और यह आश्चर्यजनक रूप से काम किया, लेकिन मैं अभी भी जानना चाहूंगा कि renameठीक से काम क्यों नहीं कर रहा है।

चीयर्स और किसी भी मदद के लिए धन्यवाद आप मुझे दे सकते हैं।

जवाबों:


14

मुझे लगता है कि शायद आपके दोहरे उद्धरण चिह्नों का उपयोग शेल को विस्तार करने $1और करने की अनुमति दे रहा है$2

$ rename -nv "s/^(\d{2})\.(\d{2}).*/s$1e$2.mp4/" *.mp4
12.34 File name.mp4 renamed as se.mp4

नाम बदलने की अभिव्यक्ति के आसपास एकल उद्धरण के साथ

$ rename -nv 's/^(\d{2})\.(\d{2}).*/s$1e$2.mp4/' *.mp4
12.34 File name.mp4 renamed as s12e34.mp4
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.