আপনার লিনাক্স ফাইল সার্চিং টুলবক্সের জন্য এখানে আরেকটি টুল রয়েছে – লোকেট আদেশ এটি কীভাবে এটি ব্যবহার করতে হয় তা ব্যাখ্যা করে৷৷
লোকেট কমান্ড বিশেষভাবে তাদের নামের দ্বারা ফাইল এবং ফোল্ডার খোঁজার জন্য তৈরি করা হয়. এটি ব্যবহার করা সহজ এবং প্যাটার্ন ব্যবহার করে ফাইল অনুসন্ধান করতে পারে। আপনি যদি একটি নির্দিষ্ট প্রকার/ফাইল এক্সটেনশন সহ ফাইল খুঁজছেন তাহলে এটি সহায়ক৷
৷ইন্সটল করা হচ্ছে লোকেট
লোকেট করুন আপনার সিস্টেমে ডিফল্টরূপে ইনস্টল নাও হতে পারে৷
ডেবিয়ান/উবুন্টু-ভিত্তিক ডিস্ট্রিবিউশনে ইনস্টল করতে, চালান:
sudo apt install mlocate
অথবা Redhat/CentOS/Fedora:
-এsudo yum install mlocate
লিনাক্স লোকেট কমান্ড সিনট্যাক্স
লোকেট আদেশ দ্রুত। এর কারণ হল সরাসরি ফাইল সিস্টেম অনুসন্ধান করার পরিবর্তে, এটি ফাইলগুলির একটি ডাটাবেস অনুসন্ধান করে যা পর্যায়ক্রমে আপডেট করা হয়। এটি অনুসন্ধানকে আরও দ্রুত করে তোলে৷
যাইহোক, এর মানে হল যে শেষবার ডাটাবেস রিফ্রেশ করার পর থেকে যদি একটি ফাইল সরানো, পুনঃনামকরণ বা সরানো হয়, তবে এটি ফলাফলগুলিতে প্রদর্শিত হবে৷
ডিফল্টরূপে, লোকেট দ্বারা ব্যবহৃত ডাটাবেস ফাইলগুলি খুঁজতে প্রতিদিন আপডেট হওয়ার জন্য নির্ধারিত হবে, তবে আপনি যদি আপনার ফাইলগুলি পুনরায় সাজিয়ে থাকেন এবং একটি আপ-টু-ডেট রেকর্ডে অনুসন্ধান করতে চান তবে একটি ম্যানুয়াল আপডেট ট্রিগার করা সম্ভব৷
ডাটাবেস আপডেট করা হচ্ছে
লোকেট দ্বারা ব্যবহৃত ডাটাবেস আপডেট করতে ফাইল খুঁজতে, চালান:
sudo updatedb
ফাইল সনাক্ত করা
লোকেট ব্যবহার করে ফাইল খোঁজার জন্য সিনট্যাক্স নিম্নরূপ:
locate OPTIONS PATTERN
মনে রাখবেন:
- বিকল্পগুলি৷ ঐচ্ছিক এবং লোকেট এর ডিফল্ট আচরণ পরিবর্তন করতে নীচের টেবিল থেকে সরবরাহ করা যেতে পারে আদেশ
- প্যাটার্ন৷ অনুসন্ধানের জন্য একটি মিল হিসাবে বিবেচিত হওয়ার জন্য প্যাটার্ন ফাইলের নাম অবশ্যই মিলতে হবে
- সমস্ত ফাইলের ফলাফলগুলি হবে সম্পূর্ণ ফাইল সিস্টেম থেকে ডিফল্টরূপে - শুধুমাত্র বর্তমান কার্যকারী ডিরেক্টরি নয়
- যদি লোকেটে এর জন্য কোনো ডাটাবেস তৈরি করা না হয় ব্যবহার করার কমান্ড, আপনাকে একটি তৈরি করতে বলা হতে পারে
- লোকেট কমান্ড 0 এর একটি স্ট্যাটাস কোড প্রদান করবে যদি একটি মিলে যাওয়া ফাইল পাওয়া যায় এবং 1 যদি কোনো ফাইল না পাওয়া যায় বা কোনো ত্রুটি দেখা দেয়।
কমান্ড বিকল্প
এখানে লোকেটে এর জন্য সাধারণভাবে ব্যবহৃত কিছু বিকল্প রয়েছে কমান্ড, সরাসরি অফিসিয়াল ডক্স থেকে:
-b | নির্দিষ্ট প্যাটার্নের সাথে শুধুমাত্র মূল নামের সাথে মিল করুন। |
-c | মানক আউটপুটে ফাইলের নাম লেখার পরিবর্তে, শুধুমাত্র মিলে যাওয়া এন্ট্রির সংখ্যা লিখুন। |
-e | শুধুমাত্র এন্ট্রি প্রিন্ট করুন যা লোকেটে চালানোর সময় বিদ্যমান ফাইলগুলিকে নির্দেশ করে৷ |
-i | নিদর্শন মেলে যখন কেস পার্থক্য উপেক্ষা করুন। |
-l | LIMIT এন্ট্রি খোঁজার পর সফলভাবে প্রস্থান করুন। যদি –count বিকল্পটি নির্দিষ্ট করা থাকে, তাহলে ফলাফলের সংখ্যাও LIMIT-এ সীমাবদ্ধ থাকে৷ |
-P | ফাইলগুলি বিদ্যমান কিনা তা পরীক্ষা করার সময় (যদি -বিদ্যমান বিকল্পটি নির্দিষ্ট করা থাকে), ট্রেলিং সিম্বলিক লিঙ্কগুলি অনুসরণ করবেন না। এর ফলে ভাঙ্গা প্রতীকী লিঙ্কগুলি অন্যান্য ফাইলের মতো রিপোর্ট করা হয়। |
-q | ডাটাবেস পড়ার এবং প্রক্রিয়াকরণের সময় যে ত্রুটির সম্মুখীন হয়েছে সে সম্পর্কে কোনো বার্তা লিখবেন না। |
-r | একটি মৌলিক regexp REGEXP অনুসন্ধান করুন। এই বিকল্পটি ব্যবহার করা হলে কোনো প্যাটার্ন অনুমোদিত নয়, তবে এই বিকল্পটি একাধিকবার নির্দিষ্ট করা যেতে পারে৷ |
–regex | সমস্ত PATTERN কে বর্ধিত regexps হিসাবে ব্যাখ্যা করুন। |
বিকল্পগুলির একটি সম্পূর্ণ তালিকা দেখতে, আপনি রান করে লোকেট কমান্ডের জন্য ব্যবহারকারীর ম্যানুয়াল দেখতে পারেন:
man locate
লোকেট কমান্ডের উদাহরণ
লোকেট-এর জন্য সবচেয়ে মৌলিক ব্যবহার ফাংশন হল একটি প্রদত্ত নামের সাথে মিলে একটি ফাইল খুঁজে বের করা:
locate filename
ফাইল সিস্টেমে প্রতিটি মিলে যাওয়া ফাইলের জন্য ফাইল পাথের একটি তালিকা ফেরত দেওয়া হবে।
উপরে যেমন ব্যাখ্যা করা হয়েছে, ফাইল সিস্টেম নিজেই লোকেট দ্বারা অনুসন্ধান করা হয় না - কিন্তু একটি ডাটাবেস যা ফাইল সিস্টেমকে সূচী করে এবং পর্যায়ক্রমে আপডেট করা হয় তা অনুসন্ধান করা হয়। এটি জিনিসগুলিকে দ্রুত রাখে তবে আপনি যদি সবেমাত্র একগুচ্ছ ফাইল সরানো শেষ করেন এবং ডেটাবেস এখনও আপডেট না করা হয় তবে সমস্যা হতে পারে৷
-e বিকল্পটি জোর করে লোকেট করবে ফলাফল তালিকায় যোগ করার আগে একটি ফাইল ফাইল সিস্টেমে এখনও বিদ্যমান আছে কিনা তা পরীক্ষা করতে:
locate -e filename
এটি নতুন তৈরি বা সরানো ফাইলগুলি ফলাফলে না থাকার (বা তাদের পুরানো অবস্থানে উপস্থিত হওয়ার) সমস্যার সমাধান করে না তবে ফলাফলগুলিতে প্রদর্শিত সরানো ফাইলগুলির সমস্যার সমাধান করে৷
প্যাটার্নগুলি সরবরাহ করা যেতে পারে যাতে আপনি সহজেই ফাইল এক্সটেনশন দ্বারা অনুসন্ধান করতে পারেন:
locate *.mp3
উপরের উদাহরণটি ডাটাবেসে পাওয়া সমস্ত mp3 ফাইল ফিরিয়ে দেবে।
লোকেট কমান্ড ডিফল্টভাবে কেস-সংবেদনশীল - এটি -i ব্যবহার করে ওভাররাইড করা যেতে পারে বিকল্প:
locate -i FILENAME
আপনি -c ব্যবহার করে মিলে যাওয়া ফাইলের সংখ্যাও গণনা করতে পারেন বিকল্প:
locate -c filename