একটি ফাইলের নাম দিয়ে একটি নির্দিষ্ট স্ট্রিং দিয়ে শুরু করে সমস্ত ফাইল সন্ধান করবেন?


148

এতে প্রায় 100000 ফাইল সহ আমার একটি ডিরেক্টরি রয়েছে এবং আমি একটি নির্দিষ্ট স্ট্রিং দিয়ে শুরু করে সমস্ত ফাইলে কিছু ফাংশন সম্পাদন করতে চাই, যা কয়েক হাজার ফাইলের সাথে মেলে।

আমি চেষ্টা করেছি

ls mystring*

তবে এটি ব্যাশ ত্রুটি 'অনেক যুক্তি' দিয়ে ফিরে আসে। আমার পরবর্তী পরিকল্পনাটি ব্যবহার করা ছিল

find ./mystring* -type f

তবে এটি একই সমস্যা আছে।

কোডটির মতো দেখতে কিছু দরকার

for FILE in `find ./mystring* -type f`
do
    #Some function on the file
done

একটি forলুপের পরিবর্তে , আপনাকে পাইপ findদেওয়া উচিত while
পরবর্তী বিজ্ঞপ্তি না দেওয়া পর্যন্ত বিরতি দেওয়া হয়েছে।

উত্তর:


277

ব্যবহার

find . -name 'mystring*'

10
এবং কিছু ফাংশন সম্পাদন করতে "Find। -name 'mystring *' -exec [কমান্ড]" উদাহরণস্বরূপ "ফাইন্ড। -মেনস্ট্রিং * '-এক্সেক আরএম {{\;
এলদার

2
যেখানে name file ফাইলের নামের জন্য স্থানধারক :-) (যাতে আপনি নিজের ক্রিয়াটি নির্মাণ করতে পারেন)
সেরজিও টুলেন্টেসেভ

1
এই সব ফলাফল শূণ্য বলে মনে হয় ধারণকারী স্ট্রিং? দ্য
ব্রায়ান জেড

7
... বা find . -iname 'mystring*'ক্ষেত্রে সংবেদনশীল অনুসন্ধানের জন্য।
ফ্র্যাঙ্ক নোক্ক

ওপি একটি একক ডিরেক্টরিকে বোঝায় তাই বর্তমান ফোল্ডারে সীমাবদ্ধ করার -maxdepth 1আগে সন্নিবেশ করান-name
জ্যাকানটারবারি

27
ls | grep "^abc"  

স্ট্রিং সহ সমস্ত ফাইল আপনাকে প্রারম্ভিকভাবে দেবে (যা ওপি বিশেষত প্রয়োজনীয়) abc
এটি কেবলমাত্র বর্তমান ডিরেক্টরিতে findকাজ করে যেখানে সাব ফোল্ডারে পুনরাবৃত্তভাবে কাজ করে।

আপনার স্ট্রিং দিয়ে শুরুfind কেবল ফাইলগুলির জন্য ব্যবহার করার চেষ্টা করুন

অনুসন্ধান . নাম 'এবিসি' *


4

আপনি শুধুমাত্র ফাইলগুলিতে আপনার অনুসন্ধানকে সীমাবদ্ধ করতে চান আপনি ব্যবহার করতে বিবেচনা করা উচিত -type fআপনার অনুসন্ধানে

-inameকেস-সংবেদনশীল অনুসন্ধানের জন্যও ব্যবহার করার চেষ্টা করুন

উদাহরণ:

find /path -iname 'yourstring*' -type f

আপনি পাইপ চিহ্ন বা xargs ছাড়াই ফলাফলগুলিতে কিছু অপারেশন করতে পারেন

উদাহরণ:

ফাইলগুলি অনুসন্ধান করুন এবং তাদের আকার এমবিতে দেখান

find /path -iname 'yourstring*' -type f -exec du -sm {} \;
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.