উত্তর:
-exec ... \;
একের পর এক আইটেম চালানো হবে। সুতরাং আপনার কাছে যদি তিনটি ফাইল থাকে তবে এক্সিকিউট লাইনটি তিনবার চলবে।
-exec ... {} +
যে কমান্ড একটি সময়ে একাধিক ফাইল গ্রহণ করতে পারেন জন্য (যেমন cat
, stat
, ls
)। প্রাপ্ত ফাইলগুলি কমান্ডের find
মতো এক সাথে বেঁধে রাখা হয় xargs
। এর অর্থ কম ফোকাস আউট করা এবং ছোট অপারেশনগুলির জন্য, এটি যথেষ্ট গতিবেগ বোঝাতে পারে।
10,000 টি খালি ফাইল ক্যাটিংয়ের জন্য এখানে একটি পারফরম্যান্স ডেমো রয়েছে।
$ mkdir testdir
$ touch testdir/{0000..9999}
$ time find testdir/ -type f -exec cat {} \;
real 0m8.622s
user 0m0.452s
sys 0m8.288s
$ time find testdir/ -type f -exec cat {} +
real 0m0.052s
user 0m0.015s
sys 0m0.037s
আবার এটি কেবলমাত্র সেই আদেশগুলিতে কাজ করে যা একাধিক ফাইলের নাম নিতে পারে। আপনার কমান্ড এর ম্যানপেজটি দেখে যদি আপনার কমান্ডটি এর মতো হয় তবে আপনি কাজ করতে পারেন। এখানে থেকে সংক্ষিপ্তসার man cat
:
SYNOPSIS
cat [OPTION]... [FILE]...
উপবৃত্তির [FILE]...
অর্থ এটি একাধিক ফাইল নিতে পারে।
+
কেবলমাত্র একক আদেশে ব্যবহৃত হতে পারে এবং আপনার অবশ্যই {}
লাইনে একটি থাকতে হবে one \;
একাধিক শূন্য থেকে বহু গোষ্ঠী নিয়ে কাজ করতে পারে।
+
নয়, তাই এটি নন-লিনাক্স সিস্টেমে উপলব্ধ নাও হতে পারে। আপনি কখনই প্ল্যাটফর্মটি ছেড়ে না যান তা উদ্বেগের বিষয় নয়, তবে আপনার যদি কখনও সোলারিস ব্যবহার করতে হয় তবে তা জেনে রাখা ভাল। :)
-exec <command> {} ';'
কারণ এটি আমার টাইপিংয়ের উপর সহজ (আমি টাইপ করতে পারি তবে আমার কাছে সর্বোত্তম কৌশল নেই)।
-exec ... {} +
। দেখুন: pubs.opengroup.org/onlinepubs/9699919799/utilities/…
-exec ... {} +
এক্সটেনশানটি 2001 সালে পসিক্স স্পক্সে অন্তর্ভুক্ত করার জন্য প্রস্তাবিত হয়েছিল এবং 2004 সালে পসিক্স ইস্যুতে অনুমোদিত হয়েছিল। সম্ভবত আপনি সোলারিসের সংস্করণটি পজিক্স স্ট্যান্ডার্ডের চেয়ে পুরানো (বা কেবল পূর্ববর্তী সংস্করণটিকে লক্ষ্যবস্তু করেছেন) is
\;
, এক্সিকিউটেড কমান্ডটি হবেcat 1; cat 2; cat 3
। সাথে+
, মৃত্যুদন্ড কার্যকর করা আদেশ হবেcat 1 2 3
।