মাউন্ট করা শেয়ার অনুসন্ধান না করে সন্ধান / গ্রেপ কমান্ড


34

যখন আমি ফাইন্ড কমান্ডটি ব্যবহার করি, আমার প্রায়শই লোকাল ড্রাইভগুলি অনুসন্ধান করা প্রয়োজন। তবে, আমার প্রায়শই সুপার বড় নেটওয়ার্ক শেয়ারগুলি মাউন্ট থাকে এবং এগুলি অনুসন্ধানে অন্তর্ভুক্ত থাকে। ফাইন্ড কমান্ড, গ্রেপ এবং অন্যান্য অনুরূপ কমান্ড থাকা ব্যক্তিদের বাদ দেওয়ার কি সহজ উপায় আছে? উদাহরণ:

/ -name .vimrc অনুসন্ধান করুন

উত্তর:


46

সন্ধানের -fstype localবিকল্পটি ব্যবহার করুন :

find / -fstype local -name .vimrc

আপনি যদি কেবলমাত্র নির্দিষ্ট পাথগুলি বাদ দিতে চান তবে আপনি ব্যবহার করতে পারেন -prune:

find / -name /path/to/ignore -prune -o -name .vimrc

হালনাগাদ:

localPsuedo-fstype খুঁজে পেতে সংস্করণ যা OS X এর সঙ্গে আসে পাওয়া যায়, কিন্তু গনুহ খুঁজুন (নয় গনুহ খোঁজ দ্বারা স্বীকৃত fstypes )।

আপনি যদি জিএনইউ অনুসন্ধান ব্যবহার করেন (যেমন বেশিরভাগ লিনাক্স সিস্টেমে ব্যবহৃত হয়), আপনি পরিবর্তে এটি ব্যবহার করতে চাইবেন -mount:

find / -mount -name .vimrc

গ্রেপ জন্য এটি কাজ করে?
ফ্লোটসাম এন জেটসাম

1
আমি মনে করি না গ্রেপের এই জাতীয় বিকল্প রয়েছে। আমি এই উত্তরের হিসাবে সাধারণত findপাইপ ব্যবহার করেছি grep: superuser.com / জিজ্ঞাসা / 800/1 । ইদানীং, আমি পরিবর্তে ack( বেটারথংরেপ ডট কম ) ব্যবহার করছি তবে ackকেবল স্থানীয় ড্রাইভ অনুসন্ধান করার বিকল্প নেই বলে মনে হচ্ছে।
ডগ হ্যারিস

আমার সম্পাদনাটি এতে প্রত্যাখ্যান করা হয়েছিল, সুতরাং এটি কেবল একটি মন্তব্য করুন। মূলত প্রথম উদাহরণটি ভুল, কারণ আপনাকে -pruneএটি যুক্ত করতে হবে বা এটি এখনও অনাকাঙ্ক্ষিত ফাইল সিস্টেমকে অতিক্রম করবে। আমি বিশ্বাস করি যে দ্বিতীয় উদাহরণটি তার -pathপরিবর্তে বোঝানো হয়েছিল -nameতাই এটি পথটিকে উপেক্ষা করবে। এফডাব্লুআইডাব্লু ... সর্বশেষ উদাহরণটি কাজ করে, এটি "বর্তমান ফাইল সিস্টেমে" থাকে তাই অন্যকে অতিক্রম করে না।
রজারডপ্যাক


0

মূল প্রশ্নটি কেবলমাত্র স্থানীয় ডিস্কে সন্ধান করা ছিল, সুতরাং সম্পূর্ণতার জন্য, আমি যা ব্যবহার করেছি তা এখানে;

for PART in `awk '(!/^#/ && $6 != "0" || $3 == "xfs" ) { print $2 }' /etc/fstab 2>/dev/null`; do find $PART -xdev -name .vimrc -print 2>/dev/null; done

যতক্ষণ না আপনার fstab সঠিকভাবে সেট আপ হয় এটি কেবল স্থানীয় ডিস্কগুলি অনুসন্ধান করা উচিত; উদাহরণস্বরূপ, সিআইএফএস মাউন্টগুলিতে সেই চূড়ান্ত পতাকাটি 0 তে সেট করা উচিত I

আশা করি এইটি কাজ করবে.

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.