จะทราบขนาดของไดเรกทอรีได้อย่างไร? รวมถึงไดเรกทอรีย่อยและไฟล์
จะทราบขนาดของไดเรกทอรีได้อย่างไร? รวมถึงไดเรกทอรีย่อยและไฟล์
คำตอบ:
du -s directory_name
หรือรับเอาต์พุตที่มนุษย์อ่านได้:
du -sh directory_name
-s
ตัวเลือกหมายความว่ามันจะไม่รายการขนาดสำหรับแต่ละไดเรกทอรีย่อยเท่านั้นขนาดรวม
du -sh bag
ทำงานได้อย่างสมบูรณ์แบบ!
ในขณะที่ใช้แพคเกจแยกต่างหากเช่น ncdu อาจทำงานได้ดีการเปรียบเทียบหลาย ๆ โฟลเดอร์สามารถทำได้ในระดับหนึ่งโดยให้รายชื่อโฟลเดอร์ที่มีขนาดใหญ่ขึ้น ตัวอย่างเช่นเพื่อเปรียบเทียบไดเรกทอรีระดับบนสุดในระบบของคุณ ...
cd /
sudo du -sh ./*
du -sh /*
du -csh
-c สร้างผลรวมทั้งหมด
-c
ไม่ได้ทำให้ความรู้สึกที่จะใช้ร่วมกับ-s
ใช่มั้ย? -s
แสดงเฉพาะขนาดของไดเรกทอรีที่ระบุนั่นคือขนาดรวมของไดเรกทอรี
ลอง
du -hax --max-depth=1 / | grep '[0-9]G' | sort -nr
สิ่งนี้จะช่วยค้นหาไดเรกทอรีขนาดใหญ่เพื่อใช้ในการกรอง du -sh ./*
คุณยังสามารถใช้ ls -ldh:
ls -ldh /etc
drwxr-xr-x 145 root root 12K 2012-06-02 11:44 /etc
-l สำหรับรายชื่อยาว -d ใช้สำหรับแสดงข้อมูล dir ไม่ใช่เนื้อหาของ dir -h ใช้สำหรับแสดงขนาดในรูปแบบที่มนุษย์สามารถอ่านได้
ฉันมักจะติดตั้งแพคเกจ "ncdu" และดูผลลัพธ์ทั้งหมดของไดเรกทอรีทั้งหมดที่มีการแสดงกราฟิก นี่เป็นเพราะฉันมักจะต้องรู้ว่าสิ่งที่ใช้พื้นที่ดิสก์มากที่สุดในเครื่องของฉันไม่ว่าไดเรกทอรีเดียวจะสรุปเท่าใด
การใช้งาน: sudo ncdu /
(คุณไม่จำเป็นsudo
สำหรับโฟลเดอร์ที่คุณได้รับอนุญาตให้อ่าน)
จะใช้เวลาสักครู่ในการสแกนสถิติการใช้งานดิสก์ในระบบไฟล์ทั้งหมด มันมีการแสดงกราฟิกบรรทัดคำสั่งที่ดีและรวมถึงการนำทางแป้นพิมพ์โดยใช้ปุ่มลูกศรเช่นไปลึกหรือสูงกว่าในเส้นทางที่สแกน Dนอกจากนี้คุณยังสามารถลบรายการโดยการกด
du -hd1
จะแสดงรายการในรูปแบบขนาดที่สามารถอ่านได้ของไดเรกทอรีทั้งหมดเช่น
656K ./rubberband
2.2M ./lame
652K ./pkg-config
ฉันลองด้วยคำสั่งด้านล่างตั้งแต่ได้รับคำตอบที่ดีที่สุดแล้ว
sudo find . -maxdepth 1 -exec du -shk {} \;| awk 'NR >1'| awk 'BEGIN{sum=1}{sum=sum+$1}END{print sum}'
เอาท์พุต
sudo find . -maxdepth 1 -exec du -shk {} \;| awk 'NR >1'| awk 'BEGIN{sum=1}{sum=sum+$1}END{print sum}'
679445
du
ของหน่วยเริ่มต้นเป็นบล็อก 512 ไบต์ตาม POSIX และกิโลไบต์บน Linux (ยกเว้นกรณีที่ตัวแปรสภาพแวดล้อมPOSIXLY_CORRECT
มีการตั้งค่า)du -k
หรือ