Links

Locate: নাম দিয়ে ফাইল সার্চ

locate বোধহয় সবচেয়ে সোজাসাপ্টা ফাইল সার্চিং কমান্ড। হাতে-কীবোর্ডে দেখা যাক। আমরা সেইসব ফাইল খুঁজবো যেগুলোর মধ্যে zip কথাটি আছে:
[email protected]:~$ locate zip
আপনি লম্বা একটা লিস্ট দেখতে পাবেন। এখন মনে করুন আপনি চাইছেন সেসব ফাইল খুঁজতে যার শুরু zip দিয়ে। যদি কোনো ফাইলের নামের শুরু zip দিয়ে হয় তবে তার শুরুতে অবশ্যই '/' থাকবে। অতএব আমরা লিখবো:
[email protected]:~$ locate /zip
কমান্ডের ফলাফলের একাংশ:
/usr/bin/zip
/usr/bin/zipcloak
/usr/bin/zipdetails
/usr/bin/zipgrep
/usr/bin/zipinfo
/usr/bin/zipnote
/usr/bin/zipsplit
/usr/lib/jvm/java-7-openjdk-amd64/jre/lib/ext/zipfs.jar
/usr/lib/python2.7/zipfile.py
/usr/lib/python2.7/zipfile.pyc
/usr/lib/python2.7/dist-packages/Pillow-2.3.0.egg-info/zip-safe
/usr/lib/python2.7/dist-packages/bzrlib/export/zip_exporter.py
/usr/lib/python2.7/dist-packages/bzrlib/export/zip_exporter.pyc
/usr/lib/python2.7/dist-packages/deluge/plugins/AutoAdd-1.04.egg/EGG-INFO/zip-safe
/usr/lib/python2.7/dist-packages/deluge/plugins/Blocklist-1.2.egg/EGG-INFO/zip-safe
/usr/lib/python2.7/dist-packages/deluge/plugins/Execute-1.2.egg/EGG-INFO/zip-safe
/usr/lib/python2.7/dist-packages/deluge/plugins/Extractor-0.2.egg/EGG-INFO/zip-safe
/usr/lib/python2.7/dist-packages/deluge/plugins/Label-0.2.egg/EGG-INFO/zip-safe
কিন্তু মনে করি আমরা আরো স্পেসিফিক জায়গায় খুঁজতে চাই। bin ফোল্ডারের মধ্যে zip। তাহলে লিখবো:
[email protected]:~$ locate bin/zip
/usr/bin/zip
/usr/bin/zipcloak
/usr/bin/zipdetails
/usr/bin/zipgrep
/usr/bin/zipinfo
/usr/bin/zipnote
/usr/bin/zipsplit
এবার আমরা এর সম্ভব্য ফাইলগুলো পেয়েছি।
এবার আরেকটু জটিল কিছু চেষ্টা করি। আমরা এমন কিছু ফাইল খুঁজবো যার শুরু zip দিয়ে এবং কোনো না কোনোভাবে সেটি python3 এর সাথে সম্পর্কযুক্ত। এজন্য আমরা এভাবে কমান্ড করবো:
[email protected]:~$ locate /zip | grep python3
/usr/lib/python3/dist-packages/pip/commands/zip.py
/usr/lib/python3/dist-packages/pip/commands/__pycache__/zip.cpython-34.pyc
/usr/lib/python3/dist-packages/setuptools-3.3.egg-info/zip-safe
/usr/lib/python3.4/zipfile.py
/usr/lib/python3.4/__pycache__/zipfile.cpython-34.pyc
/usr/local/lib/python3.4/dist-packages/django/views/decorators/gzip.py
/usr/local/lib/python3.4/dist-packages/django/views/decorators/__pycache__/gzip.cpython-34.pyc
আমরা যা করেছি তা হলো প্রথম locate /zip দিয়ে zip দিয়ে শুরু হওয়া সব ফাইল পেয়েছি। তারপর পাইপ এর সাহায্যে grep python3 যোগ করেছি। ফলে grep locate এর আউটপুটকে ফিল্টার করে শুধু যেসব ফাইলপাথে python3 কথাটি আছে সেগুলো দেখিয়েছে।

updatedb

locate কমান্ডটি সার্চের জন্য একটি ডাটাবেজ ব্যবহার করে। এই ডাটাবেজ ক্রনজবের মাধ্যমে নির্দিষ্ট সময় পরপর আপডেট হয়। তাই খুব একটা আগে তৈরী হয়নি এমন ফাইল আপনি নাও পেতে পারেন locate কমান্ড দিয়ে। এক্ষেত্রে আপনি সুপারইউজার মোডে updatedb কমান্ড দিলে ডাটাবেজ আপডেটেড হবে।