วิธีค้นหาไดเรกทอรีและไฟล์ยอดนิยม (พื้นที่ดิสก์) ใน Linux
ในฐานะผู้ดูแลระบบ Linux คุณต้องตรวจสอบเป็นระยะว่าไฟล์และโฟลเดอร์ใดใช้พื้นที่ดิสก์มากกว่า จำเป็นอย่างยิ่งที่จะต้องค้นหาขยะที่ไม่จำเป็นและกำจัดมันออกจากฮาร์ดดิสก์ของคุณ
บทช่วยสอนสั้นๆ นี้อธิบายวิธีค้นหาไฟล์และโฟลเดอร์ที่ใหญ่ที่สุดในระบบไฟล์ Linux โดยใช้ du (การใช้ดิสก์) และค้นหาคำสั่ง หากคุณต้องการเรียนรู้เพิ่มเติมเกี่ยวกับคำสั่งทั้งสองนี้ โปรดไปที่บทความต่อไปนี้
- เรียนรู้ 10 คำสั่ง 'du' (การใช้งานดิสก์) ที่เป็นประโยชน์ใน Linux
- ฝึกฝนคำสั่ง 'ค้นหา' ด้วยตัวอย่างการใช้งานจริง 35 ตัวอย่าง
วิธีค้นหาไฟล์และไดเร็กทอรีที่ใหญ่ที่สุดใน Linux
เรียกใช้คำสั่งต่อไปนี้เพื่อค้นหาไดเร็กทอรีที่ใหญ่ที่สุดอันดับต้น ๆ ภายใต้พาร์ติชัน /home
du -a /home | sort -n -r | head -n 5
คำสั่งด้านบนแสดง 5 ไดเรกทอรีที่ใหญ่ที่สุดของพาร์ติชัน /home ของฉัน
ค้นหาไดเรกทอรีที่ใหญ่ที่สุดใน Linux
หากคุณต้องการแสดงไดเร็กทอรีที่ใหญ่ที่สุดในไดเร็กทอรีการทำงานปัจจุบัน ให้รัน:
du -a | sort -n -r | head -n 5
ให้เราแยกย่อยคำสั่งและดูว่าแต่ละพารามิเตอร์พูดว่าอะไร
- คำสั่ง
du
: ประมาณการการใช้พื้นที่ไฟล์ a
: แสดงไฟล์และโฟลเดอร์ทั้งหมด- คำสั่ง
sort
: จัดเรียงบรรทัดของไฟล์ข้อความ -n
: เปรียบเทียบตามค่าตัวเลขสตริง-r
: กลับผลลัพธ์ของการเปรียบเทียบhead
: ส่งออกส่วนแรกของไฟล์-n
: พิมพ์ 'n' บรรทัดแรก (ในกรณีของเรา เราแสดง 5 บรรทัดแรก)
บางท่านต้องการแสดงผลลัพธ์ข้างต้นในรูปแบบที่มนุษย์สามารถอ่านได้ กล่าวคือ คุณอาจต้องการแสดงไฟล์ที่ใหญ่ที่สุดในหน่วย KB, MB หรือ GB
du -hs * | sort -rh | head -5
คำสั่งดังกล่าวจะแสดงไดเร็กทอรีบนสุดซึ่งกินพื้นที่ดิสก์มากขึ้น หากคุณรู้สึกว่าบางไดเร็กทอรีไม่สำคัญ คุณสามารถลบไดเร็กทอรีย่อยบางส่วนหรือลบทั้งโฟลเดอร์เพื่อเพิ่มพื้นที่ว่างได้
หากต้องการแสดงโฟลเดอร์/ไฟล์ที่ใหญ่ที่สุดรวมถึงไดเร็กทอรีย่อย ให้รัน:
du -Sh | sort -rh | head -5
ค้นหาความหมายของแต่ละตัวเลือกโดยใช้คำสั่งด้านบน:
- คำสั่ง
du
: ประมาณการการใช้พื้นที่ไฟล์ -h
: ขนาดการพิมพ์ในรูปแบบที่มนุษย์สามารถอ่านได้ (เช่น 10MB)-S
: ไม่รวมขนาดของไดเรกทอรีย่อย-s
: แสดงเฉพาะผลรวมสำหรับแต่ละอาร์กิวเมนต์- คำสั่ง
sort
: เรียงลำดับบรรทัดของไฟล์ข้อความ -r
: กลับผลลัพธ์ของการเปรียบเทียบ-h
: เปรียบเทียบตัวเลขที่มนุษย์อ่านได้ (เช่น 2K, 1G)head
: ส่งออกส่วนแรกของไฟล์
ค้นหาขนาดไฟล์ยอดนิยมเท่านั้น
หากคุณต้องการแสดงเฉพาะขนาดไฟล์ที่ใหญ่ที่สุด ให้รันคำสั่งต่อไปนี้:
find -type f -exec du -Sh {} + | sort -rh | head -n 5
หากต้องการค้นหาไฟล์ที่ใหญ่ที่สุดในตำแหน่งเฉพาะ เพียงใส่เส้นทางข้างคำสั่ง find
:
find /home/tecmint/Downloads/ -type f -exec du -Sh {} + | sort -rh | head -n 5
OR
find /home/tecmint/Downloads/ -type f -printf "%s %p\n" | sort -rn | head -n 5
คำสั่งด้านบนจะแสดงไฟล์ที่ใหญ่ที่สุดจากไดเร็กทอรี /home/tecmint/Downloads
นั่นคือทั้งหมดที่สำหรับตอนนี้. การค้นหาไฟล์และโฟลเดอร์ที่ใหญ่ที่สุดไม่ใช่เรื่องใหญ่ แม้แต่ผู้ดูแลระบบมือใหม่ก็สามารถค้นหาได้อย่างง่ายดาย หากคุณพบว่าบทช่วยสอนนี้มีประโยชน์ โปรดแชร์บนโซเชียลเน็ตเวิร์กของคุณและสนับสนุน TecMint