निर्देशिका के बाद शो स्लैश बनाएं?


19

निर्देशिकाओं के बाद मैं खोज कमांड कैसे दिखा सकता हूं? उदाहरण के लिए, मैं इसके बजाय dirदिखाना चाहता हूं । मैं उपयोग कर रहा हूँdir/dirfind . -print

जवाबों:


10

portably:

find . -type d -exec sh -c 'printf "%s/\n" "$0"' {} \; -or -print

यदि आप निर्देशिका और फ़ाइलों को अलग से सूचीबद्ध करने के लिए तैयार हैं (आप छँटाई करके आउटपुट को मर्ज कर सकते हैं):

{ find . -type d -print | sed 's!$!/!'; find . \! -type d; } | sort

GNU खोजने के साथ, शॉन जे। गोफ का जवाब देखें

यदि आप गैर-मुद्रण योग्य वर्णों को जोखिम में डालने के लिए तैयार हैं, भले ही वे टर्मिनल पर आउटपुट न कर रहे हों, तो ddeimeke का उत्तर देखें

Zsh में: print -rl -- **/*(DM)( Dडॉट फाइल्स को शामिल Mकरने के लिए , /डाइरेक्टरीज़ को जोड़ने के लिए )


पहले आदेश ने मेरे लिए ट्रेलिंग स्लैश नहीं छापे, लेकिन दूसरा करता है।
स्टीवन

15
find . \( -type d -printf "%p/\n" , -type f -print \)

यह निर्देशिका नामों और बाकी के लिए मानक प्रिंट को प्रिंट करने के लिए प्रिंटफ कमांड का उपयोग करता है।


मैं खोज के लचीलेपन पर चकित हो रहा हूं।
शॉन जे। गोफ

1
ध्यान दें कि -printfGNU खोजने के लिए विशिष्ट है।
गिल्स एसओ- बुराई को रोकना '

अच्छा उत्तर। मुझे पसंद है कि कैसे findस्थितिगत तर्क इसे इस तरह से उन्नत आउटपुट करने की अनुमति देते हैं। हालांकि, ध्यान दें कि अल्पविराम के चारों ओर रिक्त स्थान के बिना, यह काम नहीं करेगा।
जिम्प

1
इस उत्तर और गाइल्स के आधार पर, मैं निम्नलिखित सरलीकृत संस्करण के साथ आया:find . -type d -printf '%p/\n' -or -print
टेरेसा ई जूनियर

8

शायद

find . -print0 | xargs -0 ls -Fd

एक विकल्प भी है।

सोलारिस मैन पेज से:

-F निशान निर्देशिका एक अनुगामी स्लैश (/) के साथ, एक अनुगामी अधिक से अधिक चिह्न (>) के साथ दरवाजे, एक अनुगामी तार (*) के साथ निष्पादन योग्य फाइलें, अनुगामी ऊर्ध्वाधर पट्टी (!) के साथ FIFOs, एक अनुगामी के साथ प्रतीकात्मक लिंक "। "साइन (@), और AF_UNIX पते पर परिवार के सॉकेट्स को एक अनुगामी चिह्न (=) के साथ। ऑपरेंड के रूप में नामित सिम्लिंक्स का अनुसरण करता है।


@ गिल्स: धन्यवाद "d" ;-)
ddeimeke

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