আপনি সন্ধানের জন্য কলগুলি চেন করতে চাইতে পারেন (একবার, যখন আপনি শিখেছিলেন যে এটি সম্ভব, যা আজ হতে পারে)। এটি অবশ্যই সম্ভব যতক্ষণ আপনি সন্ধানে থাকবেন। আপনি একবার জার্গে পাইপ করলে তা সুযোগের বাইরে চলে যায়।
ছোট উদাহরণ, দুটি ফাইল a.lst এবং b.lst:
cat a.lst
fuddel.sh
fiddel.sh
cat b.lst
fuddel.sh
এখানে কোনও কৌশল নয় - কেবলমাত্র উভয়টিতে "ফুডেল" রয়েছে তবে কেবল একটিতে "ফিদেল" থাকে।
ধরুন আমরা তা জানতাম না। আমরা একটি ফাইল অনুসন্ধান করি যা 2 শর্তের সাথে মেলে:
find -exec grep -q fuddel {} ";" -exec grep -q fiddel {} ";" -ls
192097 4 -rw-r--r-- 1 stefan stefan 20 Jun 27 17:05 ./a.lst
ভাল, সম্ভবত আপনি উভয় স্ট্রিংকে শর্ত হিসাবে পাস করার জন্য গ্রেপ বা অন্য কোনও প্রোগ্রামের বাক্য গঠন জানেন। প্রতিটি প্রোগ্রাম যা সত্য বা মিথ্যা প্রত্যাবর্তন করতে পারে, তত্ক্ষণাতীত হিসাবে একটি ফাইল দেওয়া হয়েছে, এখানে ব্যবহার করা যেতে পারে - গ্রেপ কেবল একটি জনপ্রিয় উদাহরণ ছিল।
এবং মনে রাখবেন, আপনি অনুসরণ করতে পারে -exec খুঁজে , অপরকে খুঁজে কমান্ড মতো -ls বা -delete বা অনুরূপ কিছু। দ্রষ্টব্য, যে মুছে ফেলা কেবল আরএম করে না (ফাইলগুলি সরায়), কিন্তু rmdir (ডিরেক্টরিগুলিও সরিয়ে দেয়)।
এ জাতীয় শৃঙ্খলা একটি কমান্ডের একটি এবং সংশ্লেষ হিসাবে পড়া হয়, যতক্ষণ না অন্যথায় নির্দিষ্ট করা হয় (যথা একটি -or
স্যুইচ (এবং পেরেনস (যা মাস্কিং প্রয়োজন)) সহ।)।
সুতরাং আপনি অনুসন্ধান শৃঙ্খলা ছেড়ে যাচ্ছেন না, এটি একটি সহজ জিনিস। আমি -xargs ব্যবহার করার কোনও সুবিধা দেখতে পাচ্ছি না, যেহেতু আপনাকে ফাইলগুলি পাস করার ক্ষেত্রে সাবধানতা অবলম্বন করতে হবে, যা এমন কিছু যা করার দরকার পড়ে না - এটি স্বয়ংক্রিয়ভাবে আপনার জন্য প্রতিটি ফাইলকে একক যুক্তি হিসাবে পরিচালনা করে।
যদি আপনি বিশ্বাস করেন যে সন্ধানের }} ধনুর্বন্ধনীগুলির জন্য আপনার কিছু মুখোশ প্রয়োজন , আমার প্রশ্নটি বিনা দ্বিধায় পড়ুন যা প্রমাণ চেয়েছে। আমার জোর: আপনি না।
find
। অনেক ধন্যবাদ!