วิธีค้นหาไฟล์ขนาดใหญ่ (> 100 MB) ใน/home/'ล้าง'?
มันเป็น Centos 6.x ฉันลองใช้คำสั่งบางอย่าง แต่ไม่ได้ผล
วิธีค้นหาไฟล์ขนาดใหญ่ (> 100 MB) ใน/home/'ล้าง'?
มันเป็น Centos 6.x ฉันลองใช้คำสั่งบางอย่าง แต่ไม่ได้ผล
คำตอบ:
ค้นหามีตัว-deleteเลือกเป็นของตัวเอง
find /home -type f -size +100M -delete
ควรทำสิ่งที่คุณต้องการ เพียงระมัดระวังเกี่ยวกับตำแหน่งที่คุณวางตัวเลือก -delete
คำเตือน: อย่าลืมว่าบรรทัดคำสั่ง find ถูกประเมินเป็นนิพจน์ดังนั้นการวาง -delete ก่อนจะทำให้ลองค้นหาลบทุกอย่างที่ด้านล่างของจุดเริ่มต้นที่คุณระบุ
หากคุณต้องการทดสอบสิ่งนี้ก่อนที่จะใช้คุณต้องเพิ่ม-depthตาม-deleteความหมาย
find /home -type f -size +100M -depth
find (1)(รวมทั้งที่ของ OS X) สนับสนุน-deleteธง แต่มันไม่ได้เป็นส่วนหนึ่งของมาตรฐาน -depth -exec rm {} +หากคุณควรจะต้องเป็นทางเลือกที่ใช้
ncduเป็นเครื่องมือโต้ตอบที่ดีในการค้นหาไฟล์หรือไดเรกทอรีขนาดใหญ่ มันจะสแกนไดเรกทอรีที่กำหนดและแสดงอินเทอร์เฟซ ncurses ง่าย ๆ เพื่อนำเสนอขนาดของไดเรกทอรี นอกจากนี้ยังมีช็อตคัตในการลบไฟล์ / ไดเรกทอรี
find, duและawkมีความได้เปรียบของการเป็นมาตรฐาน
เพียงแค่หา:
find /home -type f -size +100M
ค้นหาและลบ
find /home -type f -size +100M -print0 |xargs -0 rm
du /home | awk '$1 > 1234 { print }'
มันค้นหาไม่ได้สำหรับไฟล์ขนาดใหญ่ แต่สำหรับโฟลเดอร์ขนาดใหญ่ ในกรณีที่เนื้อที่ไฟล์ไม่เพียงพอฉันพยายามค้นหาทั้งไฟล์ขนาดใหญ่และโฟลเดอร์ขนาดใหญ่เพื่อระบุพื้นที่ที่มีปัญหา
du -aจะให้มันพิมพ์ทั้งไฟล์และโฟลเดอร์รวม ' นอกจากนี้ในระบบไฟล์หลาย ๆ ระบบคุณต้องเพิ่ม-kเพื่อทำให้มันพิมพ์ขนาดใน KiB แทนการนับขนาดบล็อกโดยพลการดังนั้นฉันมักจะรวม -k เป็นพลังของนิสัย