ฉันกำลังตั้งค่า Cronjob ที่จะสำรองฐานข้อมูล MySQL ที่ฉันมีในเซิร์ฟเวอร์ของฉัน แต่ฉันไม่ต้องการให้มันเขียนทับไฟล์เดียวกันซ้ำแล้วซ้ำอีก แต่ฉันต้องการให้มีชุดข้อมูลสำรองมากมายให้เลือกทำโดยอัตโนมัติ ตัวอย่างเช่น:
## Cronjob, run May 21st, 2011:
mysqldump -u username -ppasword database > /path/to/file/21-03-2011.sql
## SAME Conjob, run May 28th, 2011:
mysqldump -u username -ppasword database > /path/to/file/28-03-2011.sql
และอื่น ๆ
มีวิธีใดบ้างที่ฉันสามารถใช้วันที่และ / หรือเวลาของระบบเป็นตัวแปรบางอย่างใน Cronjob ของฉัน ถ้าไม่คำแนะนำของคุณที่จะทำให้เหมือนกันคืออะไร?
date
ภายใน cronfile: crons บางส่วน (ทั้งหมด?) ถือว่า%
เป็นจุดสิ้นสุดของคำสั่ง (ดังนั้นจึง$()
ไม่ใช่ปัญหา) คุณต้องหลบหนีสัญญาณร้อยละทั้งหมด:... touch "/tmp/$(date +\%Y-\%m-\%d)"
(ดีกว่าที่จะใช้รูปแบบวันที่เรียงตามพจนานุกรม)