बिल्कुल $NUM
फाइलों सहित तत्काल उपनिर्देशिकाओं की सूची के लिए ।
find -maxdepth 2 -mindepth 2 -type f -printf '%h\0' | awk -v num="$NUM" 'BEGIN{RS="\0"} {array[$0]++} END{for (line in array) if (array[line]==num) printf "%s\n", line}'
फ़ाइलों से अधिक युक्त तत्काल उपनिर्देशिका को सूचीबद्ध करने के लिए $NUM
।
find -maxdepth 2 -mindepth 2 -type f -printf '%h\0' | awk -v num="$NUM" 'BEGIN{RS="\0"} {array[$0]++} END{for (line in array) if (array[line]>num) printf "%s\n", line}'
फ़ाइलों से कम युक्त तत्काल उपनिर्देशिका को सूचीबद्ध करने के लिए $NUM
।
find -maxdepth 2 -mindepth 2 -type f -printf '%h\0' | awk -v num="$NUM" 'BEGIN{RS="\0"} {array[$0]++} END{for (line in array) if (array[line]<num) printf "%s\n", line}'
आइटम एक अशक्त चरित्र द्वारा समाप्त किए जाते हैं \0
, इसलिए नए नाम या अन्य प्रकार के सफेद स्थान वाले फ़ाइल नाम की सही व्याख्या की जाएगी। %h
प्रत्येक फ़ाइल के प्रिंट dirname
। awk
फिर एक सरणी का उपयोग करके यह गिनने के लिए कि यह कितनी बार प्रत्येक निर्देशिका से मिलता है, इसे प्रिंट करते हुए यदि शर्तें पूरी होती हैं।
कृपया ध्यान दें कि उपर्युक्त आदेशों में से कोई भी शून्य फ़ाइलों वाली निर्देशिकाओं को प्रदर्शित नहीं करेगा। यह भी ध्यान रखें कि फ़ाइल से मैं नियमित रूप से फ़ाइलें, की चर्चा करते हुए कर रहा हूँ नहीं लिंक, निर्देशिका, सॉकेट, ब्लॉक, नामित पाइप, आदि।
मैंने इसे बस यथा संभव करने की कोशिश की है। यदि आप पुनरावर्ती उपनिर्देशिका या उसमें मौजूद फाइलों को खोजना चाहते हैं, तो एक संशोधित कमांड की आवश्यकता है। उन सभी को सूचीबद्ध करने के लिए बहुत अधिक संभावनाएं हैं।