कुछ एक्सटेंशन वाली फाइलें खोजें


67

मैं उन findसभी फ़ाइलों को खोजने के लिए कैसे उपयोग कर सकता हूं जिनके पास .xlsया .csvएक्सटेंशन है? मैंने एक -regexविकल्प देखा है लेकिन मुझे नहीं पता कि इसका उपयोग कैसे करना है।

जवाबों:


115

बस इसका उपयोग क्यों न करें:

find -name "*.xls" -o -name "*.csv"

इसके लिए आपको regex की आवश्यकता नहीं है।

यदि आप बिल्कुल regex का उपयोग करना चाहते हैं तो बस उपयोग करें

find -regex ".*\.\(xls\|csv\)"

8
मेरा इससे बेहतर जवाब। +1।
— पॉल टॉम्बलिन

1
कोष्ठक से पहले बैकस्लैश की आवश्यकता क्यों है? मुझे पता है कि यह इसके बिना काम नहीं करता है, लेकिन ऐसा लगता है कि इसे करना चाहिए।

1
क्योंकि वे डिफ़ॉल्ट रूप से नियमित अभिव्यक्ति emacs हैं। उपयोग -regextype को बदलने के लिए।

4
बस रिकॉर्ड के लिए: मैं कभी याद नहीं कर सकता कि कौन से उपकरण चाहते हैं "(" समूह के लिए "और जो चाहते हैं" "("। मुझे हमेशा इसे जानने के लिए प्रयास करना होगा।
— जोआचिम सॉर

1
रेगेक्स उदाहरण काम नहीं करता है
— होस्टमास्टर

12
find . \( -name  \*.xls -o -name \*.csv \) -print

-O विकल्प के बारे में नहीं जानता था। धन्यवाद!

1
क्या इसे कोष्ठक की आवश्यकता है? खोजो। '' (-name * * .xls -o -name * .csv ')' - प्रिंट

@ एड्रियन - नहीं, यह नहीं है। मुझे यकीन नहीं है कि अगर यह गैर-जीएनयू पर ऐसे परिजनों की आवश्यकता होगी, जहां "-प्रिंट" पहले से ही डिफ़ॉल्ट कार्रवाई नहीं थी।
— पॉल टॉम्बलिन

5
खैर, जीएनयू पाते हैं (ubuntu 11.04 पर डिफ़ॉल्ट) दोनों परनों और -प्रिंट या बिना (पार्न्स और -प्रिंट) के साथ सही ढंग से काम करता है। लेकिन find . -name \*.xls -o -name \*.csv -printआउटपुट केवल मैचिंग फाइल .csv,
— bbaja42

तुम सही हो, मुझे परनियों की जरूरत है।
— पॉल टॉम्बलिन
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.