Konfiguruję Cronjob, który utworzy kopię zapasową bazy danych MySQL, którą mam na serwerze, ale nie chcę, aby ciągle nadpisywał ten sam plik. Zamiast tego chcę mieć szereg kopii zapasowych do wyboru, wykonywanych automatycznie. Na przykład:
## 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
I tak dalej.
Czy jest jakiś sposób na użycie daty i / lub godziny systemowej jako zmiennej w moim Cronjob? Jeśli nie, jakie są Twoje sugestie, aby osiągnąć to samo?
date
na plik cron: niektóre crony (wszystkie?) Traktują%
jako koniec polecenia. (więc$()
to nie był problem). Musisz uciec od wszystkich znaków procentu:... touch "/tmp/$(date +\%Y-\%m-\%d)"
(ładniej jest użyć formatu daty, który sortuje leksykograficznie)