जवाबों:
ls -F |grep -v / | wc -l
ls -F प्रविष्टियों के लिए सभी फाइलों और अपेंड इंडिकेटर (* / => @ |) की सूची बनाएं grep -v /सभी डी स्ट्रिंग्स रखें जिसमें स्लैश न हो wc -l लाइनों की गिनतीइसे इस्तेमाल करे
ls -al | grep ^[-] | wc -l
ls -al - लंबी सूची प्रारूप के साथ सभी फ़ाइल को सूचीबद्ध करेंgrep ^[-] - स्ट्रिंग के लिए खोज जो "-" के साथ शुरू होती है, जो कि एलएस -al के साथ सूची फ़ाइल के लिए नियमित फ़ाइल को सूचित करने के लिए प्रतीक हैwc -l - लाइनों की गिनती-द्वाराl
मैं सिर्फ थोम का जवाब जोड़ना चाहता हूं क्योंकि मुझे बैश के साथ खेलना पसंद है । ये रहा:
echo "Directory $(pwd) has $(ls -F |grep -v / | wc -l) files"
Bellow मेरी /dataनिर्देशिका का एक परिणाम है :
Directory /data has 580569 file(s).
और बलो मेरे स्पष्टीकरण हैं:
echo double-quoted-message एक वांछनीय संदेश प्रिंट करेगा।$(any-desirable-valid-command)echoवसीयत के दोहरे उद्धृत संदेश के अंदर संबंधित कमांड निष्पादन का परिणाम प्रिंट करेगा।pwd वर्तमान निर्देशिका प्रिंट करेगा।ls -Fप्रविष्टियों के लिए सभी फाइलों और अपेंड इंडिकेटर (* / => @ |) में से एक को सूचीबद्ध करने के लिए है। मैंने इसे थॉम के जवाब से कॉपी किया ।grep -v /सादे-पाठ को खोजने के लिए एक कमांड है, -v /पैरामीटर उन सभी तारों को रखेगा जिसमें स्लैश (एस) नहीं है।wc -l लाइन की गिनती प्रिंट करेंगे।मुझे पता है कि यह प्रश्न 3 साल पुराना है, मैं सिर्फ एक और उत्तर जोड़ने के लिए अपने आग्रह को पकड़ नहीं सकता।
यदि आपने treeअपने सिस्टम पर स्थापित किया है तो आप इस कमांड का उपयोग कर सकते हैं:
tree -L 1 /path/to/your/directory | tail -n 1
यह आपको उस निर्देशिका में फ़ाइलों और निर्देशिकाओं की संख्या दिखाता है।
-L n खोज की गहराई को दर्शाता है।
आप के treeसाथ स्थापित कर सकते हैं sudo apt-get install tree।
विशिष्ट प्रकार की फ़ाइलों की कुल संख्या गिनने के लिए आप टाइप कर सकते हैं:
ls|grep jpg |wc -l