निर्देशिका के भीतर समान एक्सटेंशन वाली सभी फ़ाइलों को कैसे खोजें


61

मैं लिनक्स में शुरुआत कर रहा हूं और मैं सभी .confफाइलों को खोजना चाहता हूं /etc/

मैंने कोशिश की grep -r *.conf /etc, लेकिन परिणाम सही नहीं है।

मैं क्या गलत कर रहा हूं?

जवाबों:


94

बस प्रेस Ctrl+ Alt+ Tअपने कीबोर्ड पर टर्मिनल खोलने के लिए। जब यह खुलता है, तो नीचे कमांड चलाएँ:

find . -type f -name "*.txt"

यह एक्सटेंशन वाली सभी फाइलों को सूचीबद्ध करेगा .txt

.शुरू में वर्तमान निर्देशिका को दर्शाता है। findदिए गए पथ के नीचे सभी निर्देशिकाओं में पुनरावर्ती खोज करता है। यदि आप चाहते हैं कि खोज वर्तमान कार्यशील निर्देशिका के अलावा कहीं और शुरू हो, तो उदाहरण के लिए पथ निर्दिष्ट करें:

find /etc -type f -name "*.conf"

यह /etcनिर्देशिका और उसके सभी उपनिर्देशिकाओं को .confविस्तार के साथ नियमित फाइलों के लिए खोजता है ।


1
यह काम करता हैं। क्या इस आदेश के लिए कोई विकल्प हैं?
एड्रियन जॉर्ज

1
आप लोकेट पर एक नज़र डाल सकते हैं ।
मिच

@ AdrianGeorge findइतनी व्यापक रूप से उपयोग किया जाता है, इतनी अच्छी तरह से प्रलेखित है, और इसके बारे में इतने सारे StackOverflow / Exchange पोस्ट हैं जिनके साथ काम करने के लिए कुछ आसान खोजना मुश्किल होगा। आप जो कुछ भी करना चाहते हैं उसके बारे में कहीं न कहीं ऑनलाइन लिखा गया है।
बॉलपॉइंटबैन

6

मैं व्यक्तिगत रूप से उपयोग करूंगा find, लेकिन आप इन चीजों के लिए भी ग्लोब कर सकते हैं:

shopt -s globstar
ls /etc/{,**/}*.conf

और आप पता लगा सकते हैं और यह तेज़ है लेकिन विश्वसनीय नहीं है।

locate '/etc/**.conf'

locateविश्वसनीय क्यों नहीं है?
गिरलड़ी

1
@Giraldi locateहाल ही में सटीक होने के लिए अद्यतन किया गया है कि mlocate डेटाबेस पर निर्भर करता है। डिफ़ॉल्ट रूप से जो केवल दिन में एक बार अपडेट करने के लिए निर्धारित है (हालांकि आप इसे मैन्युअल रूप से बाध्य कर सकते हैं updatedb)।
ओली

@ हालांकि मैक पर सही नहीं है, है ना? लगता है कि मैक ओएस अपडेटेड रहता है
d8aninja

6

grepफ़ाइलों की सामग्री खोजता है , फ़ाइल नाम नहीं।

आप चाहते हैं कि सभी .confफाइलों को खोजने के /etc/लिए:

find /etc -name "*.conf"

2

खोज आदेश धीमा है, इस आदेश का उपयोग करें आपको तुरंत परिणाम देगा:

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
muru
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.