स्थितियों के साथ पुनरावर्ती एल.एस.


17

एक निर्देशिका और उपनिर्देशिका में सभी पीडीएफ फाइलों को खोजने के लिए मैं इस तरह की कमांड का उपयोग क्यों नहीं कर सकता हूं? मैं यह कैसे करुं? (मैं उबंटू में बैश का उपयोग कर रहा हूं)

ls -R *.pdf

संपादित करें

फिर मैं इन सभी फ़ाइलों को हटाने के बारे में कैसे जाऊँगा?

जवाबों:


22

एक निर्देशिका और उपनिर्देशिका में सभी पीडीएफ फाइलों को खोजने के लिए मैं इस तरह की कमांड का उपयोग क्यों नहीं कर सकता हूं?

निष्पादित करने से पहले , *.pdfआपकी कमांड के वाइल्डकार्ड bashको वर्तमान निर्देशिका में सभी मिलान फ़ाइलों द्वारा विस्तारित किया जाता है ।ls


मैं यह कैसे करुं? (मैं उबंटू में बैश का उपयोग कर रहा हूं)

आपका जवाब है

find . -name \*.pdf

पीडीएफ फाइलों की पुनरावर्ती सूची है। -inameकेस असंवेदनशील मैच है, इसलिए

find . -iname \*.pdf

उदाहरण के लिए, .pdf फ़ाइलों को सूचीबद्ध करता है foo.PDF

इसके अलावा, आप सीमित संख्या में सबफ़ोल्डर्स के लिए ls का उपयोग कर सकते हैं, उदाहरण के लिए

ls *.pdf */*.pdf

सबफ़ोल्डर में सभी पीडीएफ फाइलों को खोजने के लिए (बार / foo.pdf से मेल खाता है, बार / फू / asdf.pdf से नहीं, और foo.PDF से नहीं)।

यदि आप फाइंड फाइल्स को फाइंड से हटाना चाहते हैं, तो आप उपयोग कर सकते हैं

find . -iname \*.pdf -delete

1
बस यदि आप ls -lकमांड के समान आउटपुट चाहते हैं , तो फ़ाइल का आकार, स्वामित्व, दिनांक आदि दिखाते हुए, आप विकल्प के findसाथ उपयोग कर सकते हैं -ls, जैसेfind . -name \*.pdf -ls
RFVoltolini

2

जैसा कि अन्य लोगों ने कहा है, इसका उत्तर ढूंढना है।

अब दूसरे भाग का उत्तर देना है।

  • फिर मैं इन सभी फ़ाइलों को हटाने के बारे में कैसे जाऊँगा?

    खोजो। -iname * .pdf -exec rm {} \;

करना चाहिए।


2
आपको अपने ग्लोब को समय से पहले विस्तारित होने से बचाने के लिए उद्धृत करने की आवश्यकता है।
अगली सूचना तक रोक दिया गया।

1

Ls के बजाय खोज का उपयोग करें

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