'+' (যোগ) এবং '' 'ব্যবহারের মধ্যে পার্থক্য কী; (সেমিকোলন) ইন-এক্সেক কমান্ড?


28

আমি অবাক হয়ে জানতে পারি যে আমি যখন কমান্ড ব্যবহার করি তখন কমান্ডের ব্যবহার +এবং ;শেষে কী পার্থক্য হয় ?-execfind

find .... -exec ... \; 

বনাম

find .... -exec ... + 

উত্তর:


36

-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 \;একাধিক শূন্য থেকে বহু গোষ্ঠী নিয়ে কাজ করতে পারে।


4
উদাহরণ: এর সাথে \;, এক্সিকিউটেড কমান্ডটি হবে cat 1; cat 2; cat 3। সাথে +, মৃত্যুদন্ড কার্যকর করা আদেশ হবে cat 1 2 3
আলা আলী

আফাইক, এটি পসিক্স +নয়, তাই এটি নন-লিনাক্স সিস্টেমে উপলব্ধ নাও হতে পারে। আপনি কখনই প্ল্যাটফর্মটি ছেড়ে না যান তা উদ্বেগের বিষয় নয়, তবে আপনার যদি কখনও সোলারিস ব্যবহার করতে হয় তবে তা জেনে রাখা ভাল। :)
সাইমন রিখটার

ওহ সুন্দর, তথ্যের জন্য ধন্যবাদ। আমি সাধারণত -exec <command> {} ';'কারণ এটি আমার টাইপিংয়ের উপর সহজ (আমি টাইপ করতে পারি তবে আমার কাছে সর্বোত্তম কৌশল নেই)।
হ্যান্টজার

2
@ সিমনরিখটার: না, পসিক্স -exec ... {} +। দেখুন: pubs.opengroup.org/onlinepubs/9699919799/utilities/…
cuonglm

@ সিমনরিখটার এই -exec ... {} +এক্সটেনশানটি 2001 সালে পসিক্স স্পক্সে অন্তর্ভুক্ত করার জন্য প্রস্তাবিত হয়েছিল এবং 2004 সালে পসিক্স ইস্যুতে অনুমোদিত হয়েছিল। সম্ভবত আপনি সোলারিসের সংস্করণটি পজিক্স স্ট্যান্ডার্ডের চেয়ে পুরানো (বা কেবল পূর্ববর্তী সংস্করণটিকে লক্ষ্যবস্তু করেছেন) is
অলি
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.