উত্তর:
আপনার renameকেবল একটি ফাইলের নাম পরিবর্তন করতে ব্যবহার করা উচিত নয় , পরিবর্তে mv(1) ব্যবহার করুন।
আরও, হোয়াইটস্পেস থেকে বাঁচতে এটির সাথে একটি উপসর্গ করুন \:
"Ubuntu One" → Ubuntu\ One
আপনার আদেশ হবে
mv bla\ bla.txt blabla.txt
ব্যাকস্ল্যাশ বাশকে বলে যে পরের অক্ষরটি কোনওরকম বিশেষ, যেমন \a'বেল' এর \জন্য আক্ষরিক জায়গার জন্য
দেখতে man ascii(7) আরো অনেক কিছুর জন্য
বিকল্প হিসাবে, যেহেতু আপনি এখন সঠিক কমান্ডটি ব্যবহার করছেন তাই mvঅনেকগুলি স্থান থাকলে আপনি ফাইলের নামটি উদ্ধৃত করতে পারেন:
mv "bla bla.txt" blabla.txt
(এটি bla\ \ \ \ bla.txtপালিয়ে যাওয়া আকারে হবে)
ব্যাশে, উদ্ধৃত স্ট্রিংগুলি (একক বা ডাবল উদ্ধৃতি) একক আর্গুমেন্ট হিসাবে বিবেচিত হবে, যেখানে অনাবৃত স্ট্রিংগুলি একাধিক যুক্তিতে বিভক্ত হবে, এর মতো:
["mv", "bla", "bla.txt", "blabla.txt", ]এবং mvপ্রত্যাশা:
["mv", "source", "destination", ]দ্রষ্টব্য: 'এমভি' টাইপ করুন TABএবং ফাইলের নামের প্রথম কয়েকটি অক্ষর এবং টিপুন আপনাকে ফাইলের নামের পালানো সংস্করণ দেবে, নাম পরিবর্তন করে দ্রুত এবং সহজ করে তুলবে।
renameব্যাচ-প্রক্রিয়া নিয়মিত এক্সপ্রেশন ব্যবহার করে ফাইলগুলির নাম পরিবর্তন করতে ব্যবহৃত হয়, যেমনটি এর ম্যান-পৃষ্ঠা থেকে উদাহরণে প্রদর্শিত হয়েছে :
rename 's/\.bak$//' *.bak
"* .বাক" এর সাথে মিলে যাওয়া সমস্ত ফাইল থেকে .bak (স্ট্রিংয়ের শেষে [$]) যেকোন ঘটনা ফেলা।
পুনর্নামকরণ বাল্ক নামকরণের জন্য বিশেষায়িত কমান্ড। অভাবনীয়ভাবে, আমরা সাধারণত "নামকরণ" বলি যা আসলে একটি নতুন নামে "চাল" হয়:
mv 'bla bla .txt' blabla.txt
A=bla ; mv "$A $A .txt" blabla.txtbla bla .txt স্থানান্তরিত হবে, তবে A=bla ; mv '$A $A .txt' blabla.txtআসলে "$ A $ A .txt" নামের একটি ফাইল সন্ধান করবে। হয় কেউ আপনার উদাহরণের জন্য কাজ করবে যদিও।
rename "s/\s//g" "bla bla.txt"
s হল সাব সাবস্টিটিউট কমান্ড।
white গুলি হোয়াইটস্পেসের জন্য
আপনি কিছুই দিয়ে প্রতিস্থাপন করছেন। অন্য প্রতিস্থাপন স্ট্রিং দ্বিতীয় ফরোয়ার্ড স্ল্যাশ পরে যায়।
g গ্লোবাল জন্য, অর্থাত প্রতিবার প্রতিস্থাপন। জি ছাড়াই কেবল প্রথম উদাহরণটি প্রতিস্থাপন করে।
এই কমান্ডটি সমস্ত ফাইলে আন্ডারস্কোর সহ সাদা স্থানকে প্রতিস্থাপন করবে:
rename "s/\s/_/g" *