LINUX.ORG.RU

Не срабатывает Cron-задание. В чём загвоздка?


0

1

Здравствуйте. Задумал организовать ежедневное создание резервной копии БД в 4 часа утра.

Для этого добавил в Cron следующую строчку:

* 4 *  *  * /usr/bin/mysqldump -u root -ppassword database > /tmp/backup.sql

Здесь всё замечательно и всё хорошо: в 4 часа утра создаётся файл. Однако захотелось мне, чтоб при создании имя нового файла отличалось от старого (например, датой\временем). Для этого строчку видоизменил:

* 4 *  *  * /usr/bin/mysqldump -u root -ppassword database > /tmp/backup_$(date +%d-%m-%Y,%H:%M:%S).sql

А вот эта «конструкция» уже не исполняется - файл не создаётся. При этом, если в консоли набрать:

/usr/bin/mysqldump -u root -ppassword database > /tmp/backup_$(date +%d-%m-%Y,%H:%M:%S).sql

, то файл создастся. А вот в Cron'е почему-то не срабатывает. В чём неправ?

С уважением, Геннадий.


Поместите в скрипт и вызывайте его по cron.

kostik87 ★★★★★
()

man crontab

Percent-signs (%) in the command, unless escaped with backslash (\), will be changed into newline characters, and all data after the first % will be sent to the command as standard input. There is no way to split a single command line onto multiple lines, like the shell's trailing «\».

С уважением, не Геннадий.

entefeed ☆☆☆
()
Ответ на: man crontab от entefeed

Спасибо большое! Помогло. Обратные слеши - это сила)))

Sferg
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.