ฉันมีไดเรกทอรีที่มีไฟล์บันทึกมากมายซึ่งทั้งหมดนี้ต้องการหมุนทุกวัน สำหรับวัตถุประสงค์ขององค์กรฉันต้องการย้ายบันทึกที่หมุนแล้วไปยังไดเรกทอรีอื่น (หรือไดเรกทอรีย่อย) ที่ตั้งชื่อตามวันที่โดยเก็บรักษาสัปดาห์สุดท้ายของบันทึก
ฉันสามารถใช้ logrotate เพื่อให้บรรลุผลส่วนใหญ่โดย roatating ไฟล์ในสถานที่หรือแม้แต่ย้ายพวกเขาไปยังไดเรกทอรีที่แตกต่างกันโดยใช้olddir
คำสั่ง แต่ฉันมีปัญหาในการหาวิธีการแก้ปัญหาในการสร้างไดเรกทอรีย่อยแต่ละรายการต่อการหมุน ฉันจะทำสิ่งนี้ได้อย่างไร:
Logs to rotate: /var/log/example/*
Desired target directories (keeping a week):
/var/log/example/20121006/*
[ ... ]
/var/log/example/20121012/*
postrotate
จะทำเคล็ดลับ สิ่งเดียวที่ฉันต้องเพิ่มคือการล้างไดเรกทอรีเก่าที่มีจำนวนมากกว่าหรือมากกว่าวันที่แน่นอน