Я настраиваю 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
Нужно быть осторожным с внутренним файлом: некоторые кроны (все?) Считаются%
концом команды. (так$()
что проблема не была). Вы должны избежать всех знаков процента:... touch "/tmp/$(date +\%Y-\%m-\%d)"
(лучше использовать формат даты, который сортирует лексикографически)