พิมพ์ขนาดของเนื้อหาไดเรกทอรีด้วยคำสั่ง tree ใน tree 1.5?


39

ฉันชอบtreeมันเป็นวิธีที่ดีในการแสดงไฟล์ของฉันและขนาดของโฟลเดอร์ / ไดเรกทอรี แต่ตัวเลือก -h แสดงเฉพาะขนาดของไดเรกทอรีไม่ใช่ขนาดสะสมของเนื้อหา

/media/
├── [ 16K]  64D9-E862
│   ├── [8.0K]  downloads

ฉันรู้ความจริงที่ว่าไดรฟ์ภายนอกของฉันมีมากกว่านั้นที่ 16kB

ฉันจะแก้ไขด้วยต้นไม้ 1.5 ได้อย่างไร ดีกว่า แต่ฉันจะอัปเกรดเป็น 1.6 ได้อย่างไร

คำตอบ:


45

เฉพาะต้นไม้ 1.6 ขึ้นไป

คุณอาจต้องการดู:

man tree

- คำสำหรับแต่ละไดเรกทอรีรายงานขนาดของมันเป็นการสะสมขนาดของไฟล์ทั้งหมดและไดเรกทอรีย่อย (และไฟล์ของพวกเขาและอื่น ๆ ) จำนวนรวมของพื้นที่ที่ใช้ยังมีให้ในรายงานขั้นสุดท้าย (เช่นคำสั่ง 'du -c') ตัวเลือกนี้ต้องการแผนผังเพื่ออ่านแผนผังไดเรกทอรีทั้งหมดก่อนที่จะเปล่งมันดูข้อบกพร่องและหมายเหตุด้านล่าง นัย -s

ดังนั้นคุณควรใช้:

tree --du -h

5
สิ่งนี้สำหรับชี้ไปที่ - ภาษาใน 1.6 ฉันมักจะใช้ du -h --max-depth = 1 หรือ 2 หรือสูงสุด 3 เสมอจากนั้นดริลล์ดาวน์ (cd) ลงในตำแหน่งที่ฉันต้องการไปและเรียกใช้คำสั่ง agin เดียวกัน เมื่อ tree ถูกใช้กับ -L มันนับเฉพาะไดเรกทอรี / และไฟล์ในระดับที่กำหนด Comapred to du ซึ่งคำนวณไฟล์ทั้งหมดโดยไม่คำนึงถึงพารามิเตอร์ --max-depth แต่พิมพ์ได้ถึงระดับที่ระบุ มันทำให้ต้นไม้ไม่เป็นประโยชน์สำหรับฉัน ขอบคุณนะ!
Tagar

ฉันขอแนะนำให้เพิ่ม-aตัวเลือกไปยังสถานที่ส่งออกซึ่งถูกซ่อนอยู่ (เริ่มต้นด้วยจุดเช่น. แคช)
ตื่น

3

การเพิ่มคำตอบที่ยอมรับ ... ด้วยจำนวนโฟลเดอร์จำนวนมากคุณจะได้รับผลลัพธ์จำนวนมากจากคำสั่งนั้น

ถ้าอย่างฉันคุณต้องการระบุโฟลเดอร์ขนาดใหญ่เพื่อล้างข้อมูลเนื่องจากคุณกำลังเติมไดรฟ์ของคุณคุณอาจพบว่ามีประโยชน์ในการรวมคำสั่ง tree กับ grep เพื่อ จำกัด มันไว้ในโฟลเดอร์ที่มีขนาดกิกะไบต์ช่วยให้คุณไม่ต้องลำบาก เพื่อติดตามผ่านเอาต์พุตทั้งหมด:

tree --du -h | grep G]


โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.