โฮมเพจ » ทำอย่างไร » ลบไฟล์ที่เก่ากว่า x วันบน Linux

    ลบไฟล์ที่เก่ากว่า x วันบน Linux

    ยูทิลิตี find บน linux ช่วยให้คุณสามารถส่งอาร์กิวเมนต์ที่น่าสนใจรวมถึงคำสั่งเพื่อเรียกใช้คำสั่งอื่นในแต่ละไฟล์ เราจะใช้สิ่งนี้เพื่อหาว่าไฟล์ใดที่เก่ากว่าจำนวนวันที่กำหนดและจากนั้นใช้คำสั่ง rm เพื่อลบทิ้ง.

    ไวยากรณ์คำสั่ง

    find / path / to / files * -mtime +5 -exec rm \;

    โปรดทราบว่ามีช่องว่างระหว่าง rm, และ \;

    คำอธิบาย

    • อาร์กิวเมนต์แรกคือเส้นทางไปยังไฟล์ นี่อาจเป็นเส้นทางไดเรกทอรีหรือสัญลักษณ์แทนในตัวอย่างด้านบน ฉันขอแนะนำให้ใช้เส้นทางแบบเต็มและตรวจสอบให้แน่ใจว่าคุณเรียกใช้คำสั่งโดยไม่มี exec rm เพื่อให้แน่ใจว่าคุณได้รับผลลัพธ์ที่ถูกต้อง.
    • อาร์กิวเมนต์ที่สองคือ -mtime ใช้เพื่อระบุจำนวนวันที่ไฟล์นั้นเป็น หากคุณป้อน +5 จะพบไฟล์ที่เก่ากว่า 5 วัน.
    • อาร์กิวเมนต์ที่สาม -exec อนุญาตให้คุณส่งผ่านคำสั่งเช่น rm \; ในตอนท้ายจะต้องจบคำสั่ง.

    สิ่งนี้น่าจะใช้ได้กับ Ubuntu, Suse, Redhat หรือลินุกซ์ทุกรุ่น.