আপনি কি জানেন যে লিনাক্সের একটি নতুন ইনস্টলে কতগুলি ফাইল থাকে? আপনি যদি পপস ব্যবহার করেন! লিনাক্স ডিস্ট্রিবিউশন একটি উদাহরণ হিসাবে, 31,000 ফাইল আছে. আপনি যেকোন ডকুমেন্ট তৈরি করা, মিউজিক স্টোর করা, পিডিএফ ডাউনলোড করা বা ছবি সাজানো শুরু করার আগে।
এই কারণে, আপনার প্রয়োজনের সময় লিনাক্সে সঠিক ফাইল বা ফোল্ডার খুঁজে পাওয়া একটি চ্যালেঞ্জ হয়ে দাঁড়ায়। এই প্রবন্ধে, আপনি শিখবেন কিভাবে Linux FIND কমান্ড ব্যবহার করতে হয়, এবং আমরা আপনাকে সমস্ত উদাহরণ দিতে যাচ্ছি।
Linux FIND কমান্ড সিনট্যাক্স
সিনট্যাক্স বলতে বোঝায় কিভাবে শব্দ বা কমান্ড একত্রিত করা হয়। শব্দগুলিকে এলোমেলো করার মাধ্যমে একটি সাধারণ বাক্য যেমন অর্থহীন হয়ে উঠতে পারে, তেমনি সঠিক বাক্য গঠনে ব্যবহার না করা হলে কমান্ডগুলি ব্যর্থ হতে পারে।
খুঁজুন [পথ] [পরিস্থিতি] [ক্রিয়া]
এখানে এর অর্থ কী:
খুঁজে নিন – লিনাক্সে ফাইন্ড ইউটিলিটি শুরু করে
পথ – কোথায় দেখতে হবে
শর্তগুলি – আর্গুমেন্ট যা আপনি অনুসন্ধানে প্রয়োগ করতে চান
ক্রিয়া – আপনি ফলাফল দিয়ে কি করতে চান
তিনটি ব্যবহার করে একটি সাধারণ উদাহরণ এইরকম দেখাচ্ছে:
খুঁজে নিন। -name file-sample.rtf -print
আপনি যেমন অনুমান করেছেন, এটি file-sample.rtf ফাইলের নামটি খুঁজে পাবে .
সময়কাল (. ) path বর্তমান ডিরেক্টরি এবং এটির ভিতরের যেকোন ডিরেক্টরি দেখতে খুঁজতে বলে।
-নাম শর্ত খুঁজে বের করে সেই নির্দিষ্ট নামের ফাইলটি পেতে বলে।
-মুদ্রণ অ্যাকশন FIND কে স্ক্রীনে ফলাফল দেখাতে বলে।
ফাইন্ড কমান্ডের জন্য পিরিয়ড এবং -প্রিন্ট ডিফল্ট। সুতরাং আপনি যদি সেগুলি ব্যবহার না করেন তবে এটি এখনও একই জিনিস করবে। তাই, find -name file-sample.rtf আপনাকে একই ফলাফল দেবে।
অন্য একটি ডিরেক্টরিতে লিনাক্স খুঁজুন
আপনি যে ডিরেক্টরিতে আছেন তার থেকে আলাদা একটি ডিরেক্টরিতে অনুসন্ধান করতে পারেন৷ FIND এর পরে কেবল ডিরেক্টরিতে পাথ প্রবেশ করান৷ আপনি যদি রুটে থাকেন এবং আপনি জানেন যে ফাইলটি হোম/ব্যবহারকারীর কোথাও আছে ডিরেক্টরি আপনি ব্যবহার করবেন:
home/user -name file-sample.rtf খুঁজুন
এটি এখনও একটি পুনরাবৃত্ত অনুসন্ধান, তাই এটি ব্যবহারকারীর অধীনে প্রতিটি ডিরেক্টরির মধ্য দিয়ে যাবে৷ .
লিনাক্স খুঁজুন একাধিক ডিরেক্টরি অনুসন্ধান করুন
আপনি যদি একবারে একাধিক ডিরেক্টরিতে অনুসন্ধান করতে চান তবে কেবল একটি স্পেস দিয়ে আলাদা করে কমান্ডে তাদের তালিকা করুন৷
/lib /var /bin -name file-sample.rtf খুঁজুন
কোন পুনরাবৃত্তি বা সীমাবদ্ধ পুনরাবৃত্তি ছাড়াই লিনাক্স খুঁজুন
আপনি যদি রুট লেভেলে উপরের FIND কমান্ডটি ব্যবহার করেন, তাহলে এটি সিস্টেমের প্রতিটি ডিরেক্টরির মধ্য দিয়ে দেখবে। তাই আপনি যদি শুধুমাত্র বর্তমান ডিরেক্টরিতে আটকে থাকতে চান, -maxdepth ব্যবহার করুন বিকল্প -maxdepth-এর পরের সংখ্যা বলে থামার আগে কত গভীরে যেতে হবে তা খুঁজে বের করুন।
-maxdepth 1 ব্যবহার করা হচ্ছে মানে শুধু এই ডিরেক্টরি।
ফাইন্ড-নাম ফাইল-সাম্পল.rtf -maxdepth 1
-maxdepth 2 ব্যবহার করা হচ্ছে বা তার বেশি সংখ্যা মানে অনেক স্তরের গভীরে যাওয়া।
খুঁজুন -maxdepth 5 -name file-sample.rtf
লিনাক্স ফাইন্ড ওয়াইল্ডকার্ড উদাহরণ
FIND কমান্ডটি তারকাচিহ্ন (*) ব্যবহার করে ) একটি ওয়াইল্ডকার্ড হিসাবে। নামের যে কোনো অংশের জন্য এটি ব্যবহার করুন যা আপনি অনিশ্চিত। এটি নামে একাধিকবার ব্যবহার করা যেতে পারে। ফাইলের নামের অংশ হিসাবে ফাইলের ধরন ছাড়া, ফলাফলগুলি মেলে এমন ডিরেক্টরিগুলিও অন্তর্ভুক্ত করবে৷
বাড়ি/ব্যবহারকারীর নাম ফাইল*নমুনা* খুঁজুন
Linux FIND by type উদাহরণ
শুধুমাত্র একটি ফাইল বা ডিরেক্টরি অনুসন্ধান করতে, -type বিকল্প এবং উপযুক্ত বর্ণনাকারী ব্যবহার করুন। কয়েকটি আছে, কিন্তু ফাইল এবং ডিরেক্টরি সবচেয়ে সাধারণ:
f – ফাইল
d – ডিরেক্টরি
b – ব্লক ডিভাইস
c – অক্ষর ডিভাইস
l – প্রতীকী লিঙ্ক
s – সকেট
বাড়ি/ব্যবহারকারীর -নাম ফাইল*নমুনা* -টাইপ ডি খুঁজুন
Linux FIND কেস সংবেদনশীল উদাহরণ
উইন্ডোজের বিপরীতে, লিনাক্স একটি অক্ষর বড় হাতের নাকি ছোট হাতের তা নিয়ে চিন্তা করে। সুতরাং আপনি যদি এটি File-Sample.rtf এবং file-sample.rtf উভয়ের জন্য অনুসন্ধান করতে চান তবে -iname ব্যবহার করুন বিকল্প।
home/user-iname File-Sample.rtf খুঁজুন
লিনাক্স বেশ কিছু ফাইলের উদাহরণ খুঁজুন
ধরা যাক আপনি একটি ফাইলের .rtf এবং .html সংস্করণ খুঁজতে চেয়েছিলেন। এটি -o ব্যবহার করে একটি কমান্ডে করা যেতে পারে (বা) অপারেটর। কিছু ডিস্ট্রোতে, আপনাকে বন্ধনীর ভিতরে নাম রাখতে হতে পারে, যেমন ( -name file-sample.rtf -o -name file-sample.html ) .
home/user -name file-sample.rtf -o -name file-sample.html খুঁজুন
Linux ফাইলগুলি খুঁজে বের করুন যা একটি নামের সাথে মেলে না
সম্ভবত আপনি জানেন যে একটি ফাইলের .html সংস্করণ আছে, তবে অন্যগুলি থাকলে তা নয়৷ আপনি -না ব্যবহার করে অনুসন্ধান থেকে .html সংস্করণ ফিল্টার করতে পারেন বিকল্প।
বাড়ি/ব্যবহারকারীর -নাম ফাইল-নমুনা * -নাম -নাম *.html খুঁজুন৷
Linux FIND ত্রুটির ফলাফল ছাড়াই
কোনো পুনরাবৃত্ত উদাহরণ ছাড়াই সন্ধান করুন, লক্ষ্য করুন যে এটি প্রতিটি ডিরেক্টরিকে তালিকাভুক্ত করেছে যা এটি অনুসন্ধান করতে পারেনি এবং সঠিক ফলাফল। ওইটা বিরক্তিকর. আসুন এটিকে "অনুমতি অস্বীকার করা" ডিরেক্টরিগুলি দেখানো থেকে বিরত করি। এটিকে অন্য লিনাক্স টার্মিনাল কমান্ডের সাথে একত্রিত করুন, grep। এছাড়াও আপনি তাদের মধ্যে নির্দিষ্ট শব্দ সহ ফাইলগুলি খুঁজতে grep-এর সাথে Find ব্যবহার করতে পারেন।
খুঁজুন -maxdepth 5 -name file-sample.rtf 2>&1 | grep -v “অনুমতি অস্বীকার করা হয়েছে”
চলুন ভেঙে দেওয়া যাক 2>&1 .
2 – প্রতিনিধিত্ব করে stderr যা স্ট্যান্ডার্ড ত্রুটি আউটপুট জন্য সংক্ষিপ্ত.
1 – প্রতিনিধিত্ব করে stdout যা আদর্শ আউটপুটের জন্য সংক্ষিপ্ত
> – মানে এর বাম দিকে যাই হোক না কেন আউটপুট এর ডানদিকে যা আছে তার দিকে রিডাইরেক্ট করা।
এবং - মানে একত্র করা।
তাই 2>&1 মানে স্ট্যান্ডার্ড ত্রুটিগুলি নিন এবং সেগুলিকে পুনঃনির্দেশ করুন এবং তারপরে একটি আউটপুটে স্ট্যান্ডার্ড আউটপুটের সাথে একত্রিত করুন৷
এখন দেখা যাক | grep -v “অনুমতি অস্বীকার করা হয়েছে” .
| (একটি পাইপ বলা হয়) – লিনাক্সকে এর বাম দিকে যা কিছু তার ডানদিকে যা আছে তার ফলাফল খাওয়াতে বলে। এটি grep কমান্ডে খাওয়ানো হচ্ছে।
গ্রেপ - একটি পাঠ্য অনুসন্ধান ইউটিলিটি।
-v - গ্রেপকে এমন কিছু অনুসন্ধান করতে বলে যা -v-এর বাম দিকে পাঠ্যের সাথে মেলে না। এই ক্ষেত্রে, এটি গ্রেপকে শুধুমাত্র এমন কিছু খুঁজে পেতে বলছে যাতে পাঠ্য বা স্ট্রিং নেই, "অনুমতি অস্বীকার করা হয়েছে।" তাই grep আপনাকে শুধুমাত্র সেই ফলাফলগুলি দেখাবে যা আপনি খুঁজছেন এবং যেকোন ত্রুটি দেখাবে যা "অনুমতি অস্বীকার" এর সাথে মেলে না৷
অনুমতি উদাহরণ দ্বারা লিনাক্স খুঁজুন
এটি ভালভাবে ব্যবহার করার জন্য, আপনাকে লিনাক্স অনুমতিগুলি শিখতে হবে।
উদাহরণ ফাইলের সবকটিতেই অনুমতি আছে 664, অনুমতি 775 সহ একটি ছাড়া। -perm ব্যবহার করুন এটি খুঁজে পাওয়ার বিকল্প৷
৷দস্তাবেজ খুঁজুন/ -নাম ফাইল-নমুনা* -টাইপ f -perm 775
আকার উদাহরণ দ্বারা লিনাক্স খুঁজুন
আকার অনুসারে ফাইলগুলি সন্ধান করা সেই বিশাল ফাইলগুলি আপনার হার্ড ড্রাইভ পূরণ করার জন্য সহজ। -size বিকল্প, পছন্দসই আকার এবং নিম্নলিখিত প্রত্যয়গুলির মধ্যে একটি ব্যবহার করুন। যদি কোনো প্রত্যয় ব্যবহার না করা হয়, -size ডিফল্ট b . একটি নির্দিষ্ট আকারের সমান এবং বড় ফাইলগুলি খুঁজে পেতে, আকারের সামনে প্লাস-চিহ্ন (+) রাখুন৷
M – মেগাবাইট
G – গিগাবাইট
k – কিলোবাইট
b – ব্লক (512 বাইট – ডিফল্ট)
c – বাইট
w – শব্দ (দুটি বাইট একসাথে)
সাইজ +500k খুঁজুন
মালিক দ্বারা লিনাক্স খুঁজুন
মালিক দ্বারা ফাইল খুঁজে পেতে দুটি উপায় আছে. একটি মালিকের ব্যবহারকারীর নাম দ্বারা, এবং অন্যটি ব্যবহারকারীর গোষ্ঠী দ্বারা। ব্যবহারকারীর নাম দ্বারা খুঁজে পেতে, -ব্যবহারকারী ব্যবহার করুন৷ বিকল্প, ব্যবহারকারীর নাম দ্বারা অনুসরণ করা. ব্যবহারকারী গোষ্ঠী দ্বারা সন্ধান করতে, -গ্রুপ ব্যবহার করুন৷ গ্রুপের নামের পরে..
খুঁজুন -ব্যবহারকারী গ্রুপের নাম অথবা find -user username
Linux FIND Files by Last Modified Example
শেষ X সংখ্যায় পরিবর্তিত বা সম্পাদিত ফাইলগুলি খুঁজে পেতে, -mtime ব্যবহার করুন একটি সংখ্যা দ্বারা অনুসরণ করা হয়. একটি বিয়োগ চিহ্ন রাখা (– ) নম্বরের সামনে এখন থেকে অনেক দিন আগে যেকোন কিছু পরিবর্তন করা দেখতে পাবেন। একটি প্লাস চিহ্ন (+ ) মানে এখন থেকে অনেক দিন আগে।
-নাম খুঁজুন "ফাইল-নমুনা*" -mtime +5 (5 দিনের বেশি আগে)
-নাম খুঁজুন "ফাইল-নমুনা*" -mtime -5 (5 দিনেরও কম আগে)
মিনিটের মধ্যে শেষ পরিবর্তিত দ্বারা খুঁজে পেতে, মিনিটের সংখ্যা অনুসরণ করে -mmin বিকল্পটি ব্যবহার করুন। উপরের মত + এবং – ব্যবহার করুন।
খুঁজুন -নাম “ফাইল-নমুনা*” -mmin -5
খুঁজুন -নাম “ফাইল-নমুনা*” -mmin +5
Linux FIND Files by Last Accessed Time Example
ফাইলগুলি শেষবার কখন খোলা হয়েছিল তার উপর ভিত্তি করে ফাইলগুলি খুঁজতে ব্যবহৃত বিকল্পটি হল -atime দিনের জন্য এবং -আমিন মিনিটের জন্য ফিরে যেতে দিন বা মিনিটের সংখ্যা সহ এটি অনুসরণ করুন এবং + এবং – এর থেকে বড় এবং কম হিসাবে চিহ্ন ব্যবহার করুন।
খুঁজুন -নাম “ফাইল-নমুনা*” -এটাইম -5
খুঁজুন -নাম “ফাইল-নমুনা* -আমিন -5
অন্যান্য Linux কমান্ডের সাথে FIND একত্রিত করুন
grep কমান্ডের সাথে find ব্যবহার করার উপরে একটি উদাহরণ রয়েছে এবং আপনি এটি অন্য অনেকের সাথে ব্যবহার করতে পারেন। আপনি দেখতে পাচ্ছেন যে সন্ধান এবং অন্যান্য কমান্ড ব্যবহার করা খুব শক্তিশালী এবং একটি বিশাল টাইমসেভার হতে পারে। একটি নির্দিষ্ট ধরনের ফাইলের একটি গুচ্ছ মুছে ফেলার কল্পনা করুন। ফাইল এক্সপ্লোরারের চারপাশে অনুসন্ধান করার পরিবর্তে, সঠিক কমান্ডটি তৈরি করুন এবং এটি কয়েক সেকেন্ডের মধ্যে হয়ে গেছে। আপনি এখন কিভাবে ফাইন্ড কমান্ড ব্যবহার করবেন?