मैं लिनक्स में शुरुआत कर रहा हूं और मैं सभी .confफाइलों को खोजना चाहता हूं /etc/।
मैंने कोशिश की grep -r *.conf /etc, लेकिन परिणाम सही नहीं है।
मैं क्या गलत कर रहा हूं?
मैं लिनक्स में शुरुआत कर रहा हूं और मैं सभी .confफाइलों को खोजना चाहता हूं /etc/।
मैंने कोशिश की grep -r *.conf /etc, लेकिन परिणाम सही नहीं है।
मैं क्या गलत कर रहा हूं?
जवाबों:
बस प्रेस Ctrl+ Alt+ Tअपने कीबोर्ड पर टर्मिनल खोलने के लिए। जब यह खुलता है, तो नीचे कमांड चलाएँ:
find . -type f -name "*.txt"
यह एक्सटेंशन वाली सभी फाइलों को सूचीबद्ध करेगा .txt।
.शुरू में वर्तमान निर्देशिका को दर्शाता है। findदिए गए पथ के नीचे सभी निर्देशिकाओं में पुनरावर्ती खोज करता है। यदि आप चाहते हैं कि खोज वर्तमान कार्यशील निर्देशिका के अलावा कहीं और शुरू हो, तो उदाहरण के लिए पथ निर्दिष्ट करें:
find /etc -type f -name "*.conf"
यह /etcनिर्देशिका और उसके सभी उपनिर्देशिकाओं को .confविस्तार के साथ नियमित फाइलों के लिए खोजता है ।
findइतनी व्यापक रूप से उपयोग किया जाता है, इतनी अच्छी तरह से प्रलेखित है, और इसके बारे में इतने सारे StackOverflow / Exchange पोस्ट हैं जिनके साथ काम करने के लिए कुछ आसान खोजना मुश्किल होगा। आप जो कुछ भी करना चाहते हैं उसके बारे में कहीं न कहीं ऑनलाइन लिखा गया है।
मैं व्यक्तिगत रूप से उपयोग करूंगा find, लेकिन आप इन चीजों के लिए भी ग्लोब कर सकते हैं:
shopt -s globstar
ls /etc/{,**/}*.conf
और आप पता लगा सकते हैं और यह तेज़ है लेकिन विश्वसनीय नहीं है।
locate '/etc/**.conf'
locateविश्वसनीय क्यों नहीं है?
locateहाल ही में सटीक होने के लिए अद्यतन किया गया है कि mlocate डेटाबेस पर निर्भर करता है। डिफ़ॉल्ट रूप से जो केवल दिन में एक बार अपडेट करने के लिए निर्धारित है (हालांकि आप इसे मैन्युअल रूप से बाध्य कर सकते हैं updatedb)।
grepफ़ाइलों की सामग्री खोजता है , फ़ाइल नाम नहीं।
आप चाहते हैं कि सभी .confफाइलों को खोजने के /etc/लिए:
find /etc -name "*.conf"
खोज आदेश धीमा है, इस आदेश का उपयोग करें आपको तुरंत परिणाम देगा:
locate "/etc/*.conf"
locateकमांड ( mlocateपैकेज में) के बारे में अधिक जानकारी यहां पाई जा सकती है: https://medium.com/@thucnc/the-fastest-way-to-find-files-by-filename-mlocate-locate-commands-55xf40b297ab
locateदो साल पहले उल्लेख किया गया था: askubuntu.com/a/333728/158442