Linux find कमांड Linux सिस्टम में सबसे महत्वपूर्ण और आसान कमांड में से एक है। यह, जैसा कि नाम से पता चलता है, आपके द्वारा सेट की गई बहुत अधिक शर्तों और चरों के आधार पर आपके Linux PC पर फ़ाइलें ढूंढ सकता है। आप find कमांड का उपयोग करके अनुमतियों, उपयोगकर्ताओं, समूहों, फ़ाइल प्रकार, तिथि, आकार और अन्य संभावित मानदंडों द्वारा फ़ाइलें ढूंढ सकते हैं। यहां हम आपको दिखाते हैं कि Linux में find कमांड का उपयोग करके फ़ाइल कैसे ढूंढें।
find कमांड अधिकांश Linux डिस्ट्रो पर डिफ़ॉल्ट रूप से उपलब्ध है, इसलिए आपको इसके लिए पैकेज इंस्टॉल करने की आवश्यकता नहीं है।
वर्तमान निर्देशिकाओं में नाम से फ़ाइलें ढूंढें
फ़ाइलों को खोजने का सबसे स्पष्ट तरीका नाम से है। वर्तमान निर्देशिका में नाम से फ़ाइल ढूंढने के लिए, चलाएं:
find . -name photo.png
यदि आप बड़े और छोटे दोनों अक्षरों वाले नाम वाली फ़ाइल ढूंढना चाहते हैं, तो चलाएं:
find . -iname photo.png
यदि आप रूट डायरेक्टरी में फ़ाइल ढूंढना चाहते हैं, तो अपनी खोज को sudo से प्रीफिक्स करें, जो आपको ऐसा करने के लिए आवश्यक सभी अनुमतियां देगा, और / सिंबल भी, जो Linux को रूट डायरेक्टरी में खोजने के लिए कहता है। अंत में, -print एक्सप्रेशन आपके खोज परिणामों की डायरेक्टरी प्रदर्शित करता है। यदि आप Gzip ढूंढ रहे थे, तो आप टाइप करेंगे:
sudo find / -name gzip -print
विशिष्ट निर्देशिका के तहत फ़ाइलें ढूंढें
यदि आप "/home" जैसे विशिष्ट निर्देशिका के तहत फ़ाइलें ढूंढना चाहते हैं, तो चलाएं:
find /home -name filename.txt
यदि आप "/home" निर्देशिका के तहत ".txt" एक्सटेंशन वाली फ़ाइलें ढूंढना चाहते हैं, तो चलाएं:
find /home -name "*.txt"
एकाधिक निर्देशिकाओं जैसे "/home" और "/opt" के तहत नाम "test.txt" वाली फ़ाइलें ढूंढने के लिए, चलाएं:
find /home /opt -name test.txt
"/home" निर्देशिका में छिपी हुई फ़ाइलें ढूंढने के लिए, चलाएं:
find /home -name ".*"
"test.txt" नामक एकल फ़ाइल ढूंढने और इसे हटाने के लिए, चलाएं:
find /home -type f -name test.txt -exec rm -f {}
"/opt" निर्देशिका के तहत सभी खाली फ़ाइलें ढूंढने के लिए, चलाएं:
find /opt -type f -empty
नाम का उपयोग करके निर्देशिकाएं ढूंढें
यदि आप "/home" निर्देशिका के तहत नाम "testdir" वाली सभी निर्देशिकाएं ढूंढना चाहते हैं, तो चलाएं:
find /home -type d -name testdir
"/home" के तहत सभी खाली निर्देशिकाएं ढूंढने के लिए, चलाएं:
find /home -type d -empty
कुछ अनुमतियों वाली फ़ाइलें ढूंढें
find कमांड का उपयोग perm विकल्प का उपयोग करके विशिष्ट अनुमति वाली फ़ाइलें ढूंढने के लिए किया जा सकता है।
"/home" निर्देशिका में जिन फ़ाइलों की अनुमतियां "777" हैं, उन सभी को ढूंढने के लिए, चलाएं:
find /home -type f -perm 0777 -print
"777" अनुमति के बिना सभी फ़ाइलें ढूंढने के लिए, चलाएं:
find . -type f ! -perm 777
सभी रीड-ओनली फ़ाइलें ढूंढने के लिए, चलाएं:
find /home -perm /u=r
सभी एक्जीक्यूटेबल फ़ाइलें ढूंढने के लिए, चलाएं:
find /home -perm /a=x
जिन फ़ाइलों की अनुमतियां "553" हैं, उन सभी स्टिकी बिट सेट फ़ाइलें ढूंढने के लिए, चलाएं:
find /home -perm 1553
सभी SUID सेट फ़ाइलें ढूंढने के लिए, चलाएं:
find /home -perm /u=s
जिन फ़ाइलों की अनुमतियां "777" हैं, उन्हें ढूंढें और उनकी अनुमतियों को "700" में बदलें, चलाएं:
find /home -type f -perm 0777 -print -exec chmod 700 {} \;
तिथि और समय के आधार पर फ़ाइलें और निर्देशिकाएं ढूंढें
"/opt" के तहत उन सभी फ़ाइलों को ढूंढने के लिए जो 20 दिन पहले संशोधित की गई थीं, चलाएं:
find /opt -mtime 20
"/opt" के तहत उन सभी फ़ाइलों को ढूंढने के लिए जो बीस दिन पहले एक्सेस की गई थीं, चलाएं:
find /opt -atime 20
"/opt" के तहत उन सभी फ़ाइलों को ढूंढने के लिए जो 30 दिन से अधिक पहले संशोधित की गई थीं और 50 दिन बाद से कम:
find /opt -mtime +30 -mtime -50
"/opt" के तहत उन सभी फ़ाइलों को ढूंढने के लिए जो पिछले दो घंटों में बदली गई थीं, चलाएं:
find /opt -cmin -120
आकार के आधार पर फ़ाइलें और निर्देशिकाएं ढूंढें
"/home" निर्देशिका के तहत सभी 10MB फ़ाइलें ढूंढने के लिए, चलाएं:
find /home -size 10M
"/home" निर्देशिका के तहत उन सभी फ़ाइलों को ढूंढने के लिए जो 10MB से बड़ी और 50MB से छोटी हैं, चलाएं:
find /home -size +10M -size -50M
"/home" निर्देशिका के तहत 10MB से अधिक सभी ".mp4" फ़ाइलें ढूंढें और एक ही कमांड का उपयोग करके उन्हें हटाएं, चलाएं:
find /home -type f -name *.mp4 -size +10M -exec rm {} \;
जैसा कि आप देख सकते हैं, find कमांड सिस्टम प्रशासित करने, फ़ाइलों को खोजने के लिए निर्देशिकाओं के माध्यम से देखने, और आम तौर पर Linux में वर्चुअल डायरेक्टरी ट्री को प्रून करने के लिए अविश्वसनीय रूप से उपयोगी है। यदि आपको यह Linux लेख पसंद आया, तो हमारी कुछ अन्य Linux सामग्री देखना सुनिश्चित करें, जैसे scp कमांड का उपयोग करके सुरक्षित रूप से फ़ाइलें ट्रांसफर करना, टर्मिनल में nnn को फ़ाइल मैनेजर के रूप में उपयोग करना, और टूटे हुए पैकेज को कैसे ठीक करें।