ค้นหาไฟล์และไดเรกทอรีที่ใหญ่ที่สุดใน Linux
บางครั้ง ผู้ใช้ Linux อาจต้องค้นหาไดเร็กทอรีที่ใหญ่ที่สุดหรือไฟล์ที่ใหญ่ที่สุดในดิสก์ไดรฟ์ของตน คุณสามารถค้นหาได้อย่างรวดเร็วด้วยคำสั่งเดียว มาดูกันว่าจะทำได้อย่างไร
โฆษณา
ในบทความก่อนหน้านี้ เราเห็นในรายละเอียด วิธีดูการใช้พื้นที่ดิสก์สำหรับไฟล์หรือโฟลเดอร์โดยใช้เทอร์มินัล Linux. บทความดังกล่าวอ้างถึงคำสั่ง "du" ซึ่งสามารถคำนวณขนาดสรุปของไดเร็กทอรีหรือไฟล์ได้ คุณสามารถรวมเข้ากับเครื่องมือคอนโซลอื่นๆ เพื่อค้นหารายการที่ใหญ่ที่สุด นี่คือวิธีการ
ค้นหาไฟล์และไดเรกทอรีที่ใหญ่ที่สุดใน Linux
หากต้องการค้นหาไฟล์และไดเร็กทอรีที่ใหญ่ที่สุดใน Linux คุณสามารถรวม du ด้วยคำสั่ง sort ตัวอย่างเช่น คุณสามารถเรียกใช้ du สำหรับโฟลเดอร์ที่มีโฟลเดอร์ย่อยดังนี้:
du -hs ./distr/*
สวิตช์ -s บอกให้ du พิมพ์เฉพาะข้อมูลสรุป
สวิตช์ -h เปลี่ยนขนาดในผลลัพธ์จากไบต์ธรรมดาเป็นรูปแบบที่มนุษย์อ่านได้
ดูภาพหน้าจอต่อไปนี้:
ไม่มีปัญหาเมื่อโฟลเดอร์ที่คุณกำลังวิเคราะห์มีขนาดเล็ก แต่ถ้าคุณพยายามตรวจสอบระบบไฟล์ทั้งหมด อาจเป็นเรื่องยากมากที่จะตรวจสอบผลลัพธ์ทั้งหมดของยูทิลิตี du วิธีแก้ปัญหาที่คุณสามารถใช้ได้คือการรวม du กับคำสั่ง sort
คำสั่งจะมีลักษณะดังนี้:
du -hs ./distr/*|sort -rh
คำสั่ง sort รวมกับ du ผ่านอักขระไปป์ไลน์มีสวิตช์สองตัว: -r และ -h
-h บอกคำสั่งว่าข้อมูลที่ประมวลผลอยู่ในรูปแบบที่มนุษย์อ่านได้
-r ทำให้คำสั่ง sort เรียงลำดับข้อมูลในรูปแบบย้อนกลับ
ผลลัพธ์จะเป็นดังนี้:
สิ่งนี้มีประโยชน์มาก
ตอนนี้ ให้ลดขนาดเอาต์พุตเป็นจำนวนเร็กคอร์ดที่ระบุ ตัวอย่างเช่น มาดูไฟล์และไดเร็กทอรีที่ใหญ่ที่สุด 5 อันดับแรกกัน เพียงรวม du และ sort ด้วยคำสั่ง head
du -hs ./distr/*|sort -rh|head -n 5
อาร์กิวเมนต์ -n สำหรับคำสั่ง head ระบุจำนวนบรรทัดที่จะรวมในเอาต์พุต ในกรณีของฉัน ฉันต้องการเห็นบรรทัดที่ใหญ่ที่สุด 5 อันดับแรก
ผลลัพธ์จะเป็นดังนี้:
แค่นั้นแหละ. คุณสามารถค้นหาไฟล์และไดเร็กทอรีที่ใหญ่ที่สุดใน Linux โดยใช้คำสั่งที่มีให้ร่วมกัน เพียงแก้ไขเส้นทางรูทสำหรับคำสั่ง du และทำเสร็จแล้ว