dir
คำสั่งรายชื่อไดเรคทอรี Windows มีบรรทัดที่ท้ายแสดงจำนวนพื้นที่ทั้งหมดที่ใช้โดยไฟล์ที่แสดง ตัวอย่างเช่นdir *.exe
แสดง.exe
ไฟล์ทั้งหมดในไดเรกทอรีปัจจุบันขนาดและผลรวมทั้งหมดของขนาด ฉันชอบที่จะมีฟังก์ชั่นที่คล้ายกันกับdir
นามแฝงของฉันในทุบตี แต่ฉันไม่แน่ใจว่าจะทำอย่างไร
ขณะนี้ฉันมีalias dir='ls -FaGl'
ในของฉัน.bash_profile
แสดง
drwxr-x---+ 24 mattdmo 4096 Mar 14 16:35 ./
drwxr-x--x. 256 root 12288 Apr 8 21:29 ../
-rw------- 1 mattdmo 13795 Apr 4 17:52 .bash_history
-rw-r--r-- 1 mattdmo 18 May 10 2012 .bash_logout
-rw-r--r-- 1 mattdmo 395 Dec 9 17:33 .bash_profile
-rw-r--r-- 1 mattdmo 176 May 10 2012 .bash_profile~
-rw-r--r-- 1 mattdmo 411 Dec 9 17:33 .bashrc
-rw-r--r-- 1 mattdmo 124 May 10 2012 .bashrc~
drwx------ 2 mattdmo 4096 Mar 24 20:03 bin/
drwxrwxr-x 2 mattdmo 4096 Mar 11 16:29 download/
ตัวอย่างเช่น. รับคำตอบจากคำถามนี้ :
dir | awk '{ total += $4 }; END { print total }'
ซึ่งให้ฉันทั้งหมด แต่ไม่พิมพ์รายชื่อไดเรกทอรีเอง มีวิธีที่จะเปลี่ยนสิ่งนี้เป็นหนึ่งซับหรือสคริปต์เชลล์เพื่อให้ฉันสามารถผ่านls
ข้อโต้แย้งใด ๆ ที่ฉันต้องการdir
และได้รับรายชื่อเต็มบวกรวม? ตัวอย่างเช่นฉันต้องการเรียกใช้dir -R *.jpg *.tif
เพื่อรับรายการและขนาดรวมของประเภทไฟล์เหล่านั้นในไดเรกทอรีย่อยทั้งหมด จะเป็นการดีถ้าฉันจะได้ขนาดของแต่ละไดเรกทอรีย่อย แต่สิ่งนี้ไม่จำเป็น
ls -lh
คืออะไร แต่ก็ไม่ได้เกี่ยวข้องกับสิ่งที่awk
สคริปต์ด้านล่างคำนวณหรือสิ่งที่ฉันเพิ่มด้วยมือ บางครั้งมันใกล้เคียงกับจำนวนของไฟล์ KB ในไดเรกทอรี แต่ดูเหมือนจะไม่ทำให้ขนาดของไดเรกทอรีย่อยที่จัดสรรมีผล ผมต้องการจะขอบคุณถ้าคุณสามารถชี้ให้ฉันที่มีต่อคำอธิบายของสิ่งที่ว่าตัวเลขที่เป็น ... เกิด
ls -lh
ไม่แสดงขนาดทั้งหมดของ dir ที่คำนวณเนื้อหา
ls -lh
ช่วยคุณ มันพิมพ์ผลรวมทั้งหมดในด้านบน คุณยังสามารถเรียกใช้du -sh *.exe
เพื่อรับข้อมูลการใช้พื้นที่ดิสก์ในรูปแบบที่มนุษย์อ่านได้