আপনি 941_S_5193
একটি ফাইলের নাম দিয়েছেন , তবে আরও কয়েকটি সহায়ক হবে। আমি এই find
কমান্ডটি তৈরি করেছিলাম যা এটি নমুনা ফাইল নামে কাজ করেছে 941_S_5193
:
find /users/desktop/km/neuroimage/struct/ -type f -iname '[[:digit:]]*_[[:alpha:]]_*' -exec rename -n 's/[[:digit:]]*_[[:alpha:]]_//' {} \;
নমুনা ফাইলের নাম:
941_S_5194
923_D_5234
941_S_5193
941_S_5134
941_A_0034
941_C_9034
এই আদেশটি ব্যবহার করে:
find /users/desktop/km/neuroimage/struct/ -type f -iname '[[:digit:]]*_[[:alpha:]]_*' -exec rename -n 's/[[:digit:]]*_[[:alpha:]]_//' {} \;
ফাইলনেমে এই পরিবর্তনগুলি উত্পাদন করে:
rename(./941_S_5194, ./5194)
rename(./923_D_5234, ./5234)
rename(./941_S_5193, ./5193)
rename(./941_S_5134, ./5134)
rename(./941_A_0034, ./0034)
rename(./941_C_9034, ./9034)
ফলাফল:
0034
5134
5193
5194
5234
9034
দ্রষ্টব্য: পুনর্নবীকরণ কমান্ডে '-n' বিকল্পটি ব্যবহার করা আপনাকে আসল নামকরণের সাথে এগিয়ে যাওয়ার আগে কী নাম পরিবর্তন করে তা দেখতে দেয়। আপনি যখন এই ফাইলগুলির নাম পরিবর্তন করতে প্রস্তুত তখন সেই বিকল্পটি সরান।
কমান্ডটির পুরোপুরি প্রশংসা করার পদক্ষেপগুলি হ'ল:
find /users/desktop/km/neuroimage/struct/ -type f -iname '[[:digit:]]*_[[:alpha:]]_*'
যে ফাইলগুলি পরিবর্তন করা হবে তা সন্ধান করতে প্রথমে এটি ব্যবহার করুন ,
- যদি পদক্ষেপগুলি
(1)
ব্যর্থ হয় তবে regex
ফাইল ফাইলের সাথে মেলে না, রেগিক্সটি সাম্রাজ্য করে আপনার প্রশ্নটি আপডেট করে, অন্যথায়
যখন এটি প্রত্যাশা অনুযায়ী আসে এখন -exec rename -n 's/[[:digit:]]*_[[:alpha:]]_//' {} \;
কমান্ডটি পদক্ষেপে (1) অংশ যুক্ত করুন , সুতরাং এটি আপনাকে নাম পরিবর্তন করে কী হবে তা সন্ধান করে এবং দেখায়।
find /users/desktop/km/neuroimage/struct/ -type f -iname '[[:digit:]]*_[[:alpha:]]_*' -exec rename -n 's/[[:digit:]]*_[[:alpha:]]_//' {} \;
কাজটি শেষ হয়ে গেলে -n
এই ফাইলগুলিকে পুনরায় নামকরণের বিকল্পটি সরান । তাই ভালো:
find /users/desktop/km/neuroimage/struct/ -type f -iname '[[:digit:]]*_[[:alpha:]]_*' -exec rename -n 's/[[:digit:]]*_[[:alpha:]]_//' {} \;