which
कार्यक्रम के द्विआधारी निष्पादन योग्य पाता है (यदि यह आपके पेट में है)। man which
अधिक स्पष्ट रूप से बताते हैं:
जो फ़ाइलों (या लिंक) के पथनाम को लौटाता है, जिसे वर्तमान परिवेश में निष्पादित किया जाएगा, उसके तर्क एक सख्त POSIX-अनुरूप शेल में कमांड के रूप में दिए गए थे। यह तर्कों के नाम से मेल खाती निष्पादन योग्य फ़ाइलों के लिए PATH की खोज करके करता है। यह प्रतीकात्मक लिंक का पालन नहीं करता है।
whereis
किसी प्रोग्राम के लिए बाइनरी, सोर्स और मैन पेज फाइल्स ढूंढता है। उदाहरण के लिए
$ whereis gimp
/usr/bin/gimp /usr/lib/gimp /etc/gimp /usr/share/gimp /usr/share/man/man1/gimp.1.gz
आप करने के लिए तर्क के रूप में इन आदेशों के उत्पादन में पास करके अतिरिक्त विवरण प्राप्त कर सकते हैं ls -l
याfile
$ ls -l $(which gimp)
lrwxrwxrwx 1 root root 8 Jun 30 19:59 /usr/bin/gimp -> gimp-2.8
$ file $(which gimp)
/usr/bin/gimp: symbolic link to gimp-2.8
locate
वास्तव में उन सभी फ़ाइलों को ढूँढता है जिनके पैटर्न उनके पथ में कहीं भी निर्दिष्ट हैं। आप इसे केवल फाइलों और निर्देशिकाओं को खोजने के लिए कह सकते हैं जिनके नाम (पूर्ण पथ के बजाय) में -b
विकल्प के साथ पैटर्न शामिल है , जो आमतौर पर आप चाहते हैं, और एक कम अक्षर सूची देता है।
locate
यह तेज है क्योंकि यह एक द्विआधारी डेटाबेस का उपयोग करता है जो समय-समय पर अद्यतन (एक बार दैनिक, द्वारा cron
) हो जाता है। हाल ही में जोड़ी गई फ़ाइलों को चलाकर सुनिश्चित करने के लिए आप इसे स्वयं अपडेट कर सकते हैंsudo updatedb
इसके बारे में एक और बात locate
- यह परवाह नहीं करता है कि फाइलें अभी भी मौजूद हैं या नहीं, इसलिए हाल ही में हटाए गए फ़ाइलों को खोजने से बचने के लिए, उपयोग करें -e
। अक्सर मैं भी पाइप करता हूं less
क्योंकि सूची लंबी हो सकती है। आमतौर पर मैं करता हूं:
sudo updatedb && locate -b -e gimp | less
यूनिटी का डैश कैसे काम करता है, इसे यहाँ बताया गया है - यह Zeitgeist का उपयोग इंडेक्स सिस्टम फाइलों में करता है और उपयोग पैटर्न से सीखता है, और अन्य एप्लिकेशन को इस डेटा का उपयोग करने में सक्षम बनाता है, इसलिए यह बहुत अधिक काम कर रहा है locate
।
type
? : पी