मैं CentOS न्यूनतम संस्करण का उपयोग कर रहा हूं और मैं एक फ़ाइल का पता लगाने की कोशिश कर रहा हूं, लेकिन मुझे पता नहीं है कि फ़ाइल के लिए सभी सर्वर को कैसे खोजना है। मुझे यकीन है कि ऐसा करने के लिए एक आदेश है, क्या कोई मेरी मदद कर सकता है?
जवाबों:
CentOS लिनक्स है, इसलिए केवल अन्य सभी यूनिक्स / लिनक्स सिस्टम के बारे में, आपके पास find
कमांड है। वर्तमान निर्देशिका के भीतर फ़ाइलों की खोज करने के लिए:
find -name "filename"
आप उद्धरणों के अंदर वाइल्डकार्ड भी रख सकते हैं, न कि केवल एक सख्त फ़ाइल नाम। आप पहली बार खोजने के लिए तर्क के रूप में खोज शुरू करने के लिए स्पष्ट रूप से एक निर्देशिका निर्दिष्ट कर सकते हैं:
find / -name "filename"
रूट डायरेक्टरी से शुरू होकर "फ़ाइल नाम" या उद्धरण के बीच रेगेक्स एक्सप्रेशन से मेल खाने वाली सभी फाइलों को देखेंगे। आप दोहरे उद्धरण चिह्नों के बजाय एकल उद्धरणों का भी उपयोग कर सकते हैं, लेकिन ज्यादातर मामलों में आपको या तो एक की आवश्यकता नहीं है, इसलिए उपरोक्त आदेश बिना किसी उद्धरण के भी काम करेंगे। उदाहरण के लिए, यदि आप जावा फाइलों को खोज रहे हैं और आप जानते हैं कि वे आपके / घर / उपयोगकर्ता नाम में कहीं हैं, तो:
find /home/username -name *.java
आदेश खोजने के लिए कई और विकल्प हैं और आपको एक करना चाहिए:
man find
इसके बारे में अधिक जानने के लिए।
एक और बात: यदि आप / से खोजना शुरू करते हैं और रूट नहीं हैं या कमांड को चलाने के लिए sudo नहीं हैं, तो आपको चेतावनी मिल सकती है कि आपको कुछ निर्देशिकाओं को पढ़ने की अनुमति नहीं है। उन लोगों को अनदेखा / हटाने के लिए:
find / -name 'filename' 2>/dev/null
यह सिर्फ stderr को / dev / null में रीडायरेक्ट करता है।
find
।