ack
বর্তমান ফোল্ডারে কেবল পাঠ্যের জন্য অনুসন্ধান করার কোনও উপায় আছে কি ? (বা একটি max-depth
স্তর নির্দিষ্ট করুন ?) এবং সাথে grep
?
ack
বর্তমান ফোল্ডারে কেবল পাঠ্যের জন্য অনুসন্ধান করার কোনও উপায় আছে কি ? (বা একটি max-depth
স্তর নির্দিষ্ট করুন ?) এবং সাথে grep
?
উত্তর:
এর -n
জন্য ব্যবহার করুন no-recurse
:
$ ack -n foo
grep
ডিফল্টরূপে পুনরাবৃত্ত হয় না এবং আপনি -r
পুনরাবৃত্তি অনুসন্ধান করতে চাইলে আপনার পতাকাটি ব্যবহার করা উচিত ।
আপনি grep
নিম্নোক্তভাবে বর্তমান ডিরেক্টরিটি অনুসন্ধান করতে পারেন :
$ grep -- foo *
আপনি দম্পতি খুঁজে পেতে পারেন -অজেক তর্ক দিয়ে। উদাহরণ:
find . -maxdepth 1 -exec grep foo {} \;
এটি ছোট করা যেতে পারে, অর্থাত্ -maxdepth 2
-maxdepth 1
) স্কেলযোগ্য ছিল। উদাহরণস্বরূপ -maxdepth 2
। আপনি যে সম্পাদনাটি করেছেন সেভাবে কীভাবে বর্ণনা করবেন তা আমি জানি না।
-maxdepth
) বহনযোগ্য / মানক সিনট্যাক্স নয় (কেবলমাত্র জিএনইউ এবং কিছু বিএসডি)। এছাড়াও, \;
এখানে ব্যবহার করার কোনও অর্থ নেই ( grep
প্রতিটি ফাইলের জন্য চালান )। ব্যবহারের grep -H foo {} +
(গনুহ নির্দিষ্ট) অথবা grep foo /dev/null {} +
(আদর্শ) নিশ্চিত ফাইলের নাম সবসময় ছাপা হয় না। এর সমমানের সমমান -maxdepth 2
হবেfind . -path './*/*' -type d -prune -o -type f -exec ...
.
আপনি যেমন দেননি তেমন সহ -mindepth 1
) যখন GNU grep
ডিরেক্টরিগুলি পড়ার চেষ্টা করবে না -r
(এটি তাদের উপর পুনরাবৃত্তি করে)। আপনি একটি যোগ করতে চান করতে পারেন -d skip
থেকে grep
(অভিমানী গনুহ, grep) অথবা ভাল যোগ ! -type d
করার find
আরও ভাল বা -type f
(অথবা -xtype f
গনুহ অভিমানী find
) হিসেবে আপনি সম্ভবত না চান grep
অ নিয়মিত ফাইলগুলি পড়তে।
grep -Hin
এই পদ্ধতির সাথে ব্যবহার করার প্রবণতা রাখি যাতে ফাইলের নাম এবং ঘটনাটি চালু রয়েছে এমন লাইনটি দেখতে পারি।
-n
এ সব recurse না।