find /var/dtpdev/tmp/ -type f -mtime +15
คุณสามารถเริ่มต้นด้วยการพูดว่า จะค้นหาไฟล์ทั้งหมดที่เก่ากว่า 15 วันและพิมพ์ชื่อ เป็นทางเลือกคุณสามารถระบุ-print
ในตอนท้ายของคำสั่ง แต่นั่นเป็นการกระทำเริ่มต้น แนะนำให้รันคำสั่งด้านบนก่อนเพื่อดูว่าไฟล์ใดถูกเลือก
หลังจากที่คุณตรวจสอบว่าfind
คำสั่งแสดงรายการไฟล์ที่คุณต้องการลบ (และไม่มีผู้อื่น) คุณสามารถเพิ่ม "การกระทำ" เพื่อลบไฟล์ การกระทำทั่วไปที่ต้องทำคือ:
-exec rm -f {} \;
(หรือเท่ากัน-exec rm -f {} ';'
)
สิ่งนี้จะทำงานrm -f
ในแต่ละไฟล์; เช่น,
rm -f /var/dtpdev/tmp/A1/B1; rm -f /var/dtpdev/tmp/A1/B2; rm -f /var/dtpdev/tmp/A1/B3; …
-exec rm -f {} +
สิ่งนี้จะทำงานrm -f
ในหลาย ๆ ไฟล์พร้อมกัน เช่น,
rm -f /var/dtpdev/tmp/A1/B1 /var/dtpdev/tmp/A1/B2 /var/dtpdev/tmp/A1/B3 …
ดังนั้นจึงอาจเร็วกว่าตัวเลือก 1 เล็กน้อย (อาจต้องเรียกใช้rm -f
สองสามครั้งหากคุณมีไฟล์หลายพันไฟล์)
-delete
นี้จะบอกตัวเองเพื่อลบไฟล์โดยไม่ต้องทำงานfind
rm
สิ่งนี้อาจเร็วกว่า-exec
ตัวแปรเล็กน้อย แต่มันจะไม่ทำงานในทุกระบบ
ดังนั้นหากคุณใช้ตัวเลือก 2 คำสั่งทั้งหมดจะเป็น:
find /var/dtpdev/tmp/ -type f -mtime +15 -exec rm -f {} +