এমভি
এটি একটি বেসিক কমান্ড লাইনটি একটি কাজ করার জন্য এবং এটি ভালভাবে করার জন্য ডিজাইন করা হয়েছে (ইউনিক্স দর্শন): মুভ ফাইল (গুলি) বা ডিরেক্টরী (গুলি) ।
গন্তব্যস্থলটির স্ট্রিংয়ে পরিবর্তন করতে আপনি STDOUT
& hack হ্যাক করতে পারেন STDIN
তবে এটি কেবল একটি স্মার্ট হ্যাক নয়
নতুন নাম (পার্ল এর এক)
একই নামের অন্যান্য সরঞ্জাম রয়েছে যা এটি করতে সক্ষম হতে পারে বা নাও পারে, তাই সাবধান হন।
লোকেরা যখন কথা বলে তখন rename
আমরা এটাকে নিয়ে ELF
কম চিন্তা করি না , কম শক্তিশালী (যাদু?)।
এটি বেসিক নয়, এটি পার্ল আপনি পার্লের কিছু কার্য ভিতরে প্রবেশ করতে পারবেন এবং এটি অত্যন্ত শক্তিশালী।
এই উদাহরণ বিবেচনা করুন:
আপনি এই জাতীয় কিছু ফাইলের নাম পরিবর্তন করতে চান
foobar_1.txt
foobar_2.txt
foobar_3.txt
আপনি sprintf()
এই জাতীয় অঙ্কগুলিতে শূন্যগুলি এপেন্ড করতে পারেন (রেগেক্স, হেহ, এটি পার্ল: ডি ব্যবহার করে):
rename 's/(\d+)/sprintf("%04d", $1)/e' foobar_*.txt
এখন তোমার আছে :
foobar_0001.txt
foobar_0002.txt
foobar_0003.txt
আসলেই কোন বেসিক কমান্ড নয়, তাই না?
পুনরায় নামটি ডির (গুলি) সরানোর জন্য ডিজাইন করা হয়নি তবে এটি এটি করতে পারে:
$ mkdir -p /tmp/foo/bar/base
$ touch /tmp/foo/bar/base/file
$ rename 's!/tmp/foo/bar/base/file!/tmp/file!' /tmp/foo/bar/base/file
সরানো ফাইল
/tmp/file
¹ কয়েকটি *.stackexchange.*
ওয়েবসাইটে আমরা ওয়েবসাইটে দেখি
for FILE in `ls *.txt`
do
mv ${FILE} `echo ${FILE} | sed 's/anything_ugly/anything_still_ugly/'`
done
এটি যাওয়ার উপায় নয় , এটি সরল বগী, সঠিক মুহুর্তে সঠিক সরঞ্জামটি কেন ব্যবহার করতে হবে তা কেবল ব্যাখ্যা করার জন্য
type -a rename
এবং থেকে হয়rename --version
?