বাশ ব্যবহার
সুতরাং আসুন আমি বলি যে আমার কাছে একটি গুচ্ছ ফাইল এলোমেলোভাবে একটি প্যারেন্ট ডিরেক্টরিতে রাখা হয়েছে ~/src
, আমি একটি নির্দিষ্ট প্রত্যয়টির সাথে মেলে সমস্ত ফাইলগুলি ধরে ফেলতে এবং সেগুলি একটি ~/dist
ডিরেক্টরিতে স্থানান্তর করতে (বা অনুলিপি করতে) চাই ।
আসুন এই উদ্দেশ্যে ধরে নেওয়া যাক যে সমস্ত ফাইলের নামের এই নামকরণ কনভেনশন রয়েছে:
<filename_prefix>.<filename_suffix>
আমি জানতে পেরেছিলাম যে এটি একটি নির্দিষ্ট দিয়ে সমস্ত ফাইল পেতে filename_suffix
এবং এগুলিকে একটি দূরের ফোল্ডারে রাখার দ্রুত উপায় ছিল :
mkdir ~/dst
find source -name "*.xxx" -exec mv -i {} -t ~/dst \;
এখন এক পা এগিয়ে ... আমি খুঁজে আউটপুট কিভাবে ব্যবহার করতে পারেন, এই ক্ষেত্রে filename
, এবং ব্যবহার filename_prefix
মধ্যে একই নামের একটি ডিরেক্টরির জেনারেট করতে ~/dist
উপযুক্ত ডিরেক্টরির মধ্যে এবং তারপর সরানো (অথবা অনুলিপি করুন) সেই প্রেফিক্স সহ সমস্ত ফাইল?
mkdir ~/dst
find source -name "*.xrt,*.ini,*.moo" -exec mv -i {} -t ~/dst \;
মূলত, আমি কীভাবে উপরের কমান্ডটি পরিবর্তন করব (বা অন্য কোনও কমান্ড ব্যবহার করতে পারি), এর মতো একটি কাঠামো তৈরি করতে
(আউটপুট)
~/dist/people/people.xrt
~/dist/games/games.xrt
~/dist/games/games.moo
~/dist/games/games.ini
~/dist/monkeys/monkeys.ini
~/dist/monkeys/monkeys.xrt
এই জাতীয় ডিরেক্টরি গাছ থেকে?
(ইনপুট)
~/src/xrt/people.xrt
~/src/xrt/games.xrt
~/src/conf/games.ini
~/src/pack/monkeys.xrt
~/src/e344/games.moo
~/src/e344/monkeys.moo
~/src/en-us/monkeys.ini