मैं बैश स्क्रिप्टिंग का उपयोग करके एक ही निर्देशिका में कई फ़ाइलों का नाम बदलना चाहता हूं। फ़ाइलों के नाम इस प्रकार हैं:
file2602201409853.p
file0901201437404.p
file0901201438761.p
file1003201410069.p
file2602201410180.p
मैं निम्नलिखित प्रारूप का नाम बदलना चाहता हूं:
file2503201409853.p
file2503201437404.p
file2503201438761.p
file2503201410069.p
file2503201410180.p
मैं नाम बदलने के आदेश के बारे में पढ़ रहा था, और इसे इस तरह से करने की कोशिश करता हूं, लेकिन यह कुछ भी नहीं करता है, मुझे लगता है कि मेरे पास सिंटैक्स के बारे में प्रश्न हैं। फिर मैंने पढ़ा कि आप एमवी कमांड का उपयोग करके एक लूप बना सकते हैं :
for file in cmpsms*2014*.p; do
mv "$file" "${file/cmpsms*2014*.p/cmpsms25032014*.p}"
done
लेकिन मैं फ़ाइलों का नाम नहीं बदल सकता। मैं क्या गलत कर रहा हूं?
*
?