सभी छिपी हुई फ़ाइलों और निर्देशिकाओं की पुनरावृत्ति कैसे करें?


13

मैं सभी छिपी हुई फ़ाइलों और निर्देशिकाओं को सूचीबद्ध करना चाहता हूं और फिर फ़ाइल करने के लिए परिणाम सहेजें।

क्या इसके लिए कोई आज्ञा है?

जवाबों:


13

यदि GNU खोज का उपयोग करते हैं, तो आप कर सकते हैं

find /path -path '*/.*' -ls | tee output-file

संपादित करें

छिपी निर्देशिकाओं में निहित गैर-छिपी वस्तुओं को दिखाने से बचने के लिए

find /path -name '.*' >output-file

(जैसा कि उल्लेख किया गया है, teeयदि उत्पादन को देखने की आवश्यकता नहीं है, तो टाला जा सकता है और -lsयदि आवश्यक हो तो विकल्प का उपयोग किया जाना चाहिए)।


2
या >इसके बजाय | tee, अगर कोई टर्मिनल पर पूरे आउटपुट को नहीं देखना चाहता है।
rozcietrzewiacz

तुम भी -lsइस पर जरूरत नहीं है , कि अतिरिक्त अतिरिक्त जानकारी के बारे में सोचा जा सकता है।
कालेब

यह छिपी निर्देशिकाओं की सामग्रियों को भी सूचीबद्ध करता है, जो कि वह सवाल नहीं है जो (शायद - यह थोड़ा अस्पष्ट है)।
गिल्स एसओ- बुराई को रोकना '

@ गिल्स: वास्तव में यह अस्पष्ट है। उत्तर संपादित करें
enzotib

ध्यान दें कि पहले वाला GNU- विशिष्ट नहीं है। -path2008 से POSIX है। -lsमानक नहीं है, लेकिन काफी सामान्य है।
स्टीफन चेज़लस

10

, वर्तमान निर्देशिका में छिपा फ़ाइलों और निर्देशिकाओं को सूचीबद्ध करने के सहित .और ..:

echo .*

वर्तमान निर्देशिका और इसके उपनिर्देशिकाओं में छिपी हुई फाइलों और निर्देशिकाओं को पुनरावर्ती रूप से सूचीबद्ध करने के लिए:

find . -name '.*'

यदि आप परिणामों को फ़ाइल में सहेजना चाहते हैं, तो पुनर्निर्देशन का उपयोग करें:

find . -name '.*' >output-file.txt

1

के साथ zsh( ग्लोब क्वालिफायर का उपयोग करके D):

print -rl ./**/.*(D)

छिपी निर्देशिकाओं में गैर-छिपी फ़ाइलों को शामिल करने के लिए:

setopt extendedglob
print -rl ./**/*~^*/.*(D)

0

आप वास्तव में एक ही तर्क को एक ही कमांड लाइन में कई बार रख सकते हैं:

find /storage/????-????/ -iname '.*' -iname "*" | tee -a file-list-micSD-20190801163729.fli

tee -aआदेश आदेश के निर्गम (या प्रदर्शित करने में सक्षम है stdout whie यह एक फ़ाइल के लिए लिख) एक साथ। -aविकल्प रोकता है clobbering और इसके बजाय लक्ष्य आउटपुट फ़ाइल पर जानकारी जोड़ने है।

/storage/????-????/एक उदाहरण पथ है। यह नए एंड्रॉइड मोबाइल फोन के माइक्रोएसडी कार्ड का मार्ग है (एंड्रॉइड के लिए एक टर्मिनल एप्लिकेशन भी है, कम कमांड के साथ लेकिन फिर भी कई और एंड्रॉइड 6.0 से काफी बढ़ गया है)। माइक्रोएसडी कार्ड पहले था /storage/extSdCard। अब, यह वॉल्यूम सीरियल नंबर है।

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