В crontab у меня работает следующий cronjob.

0 0 * * * mysqldump -e --user = root --password = MYPASSWORD MYDB | GZIP | uuencode db_ date +"\%Y-\%m-\%d" .gz | mail -s ' date +"\%Y-\%m-\%d" _dump' john@example.com

Я ожидаю, что полученное письмо будет иметь тему 2013-09-14_dump и вложение будет называться db_2013-09-14_dump.gz

однако, когда я получаю это письмо, вложение в соответствии с ожидаемой темой в моем почтовом ящике: date +"%Y-%m-%d" _dump

Что я здесь не так делаю? Как я могу получить предмет для даты?

1 ответ1

1

Ваши звонки на date должны быть в кавычках:

mysqldump -e --user=root --password=MYPASSWORD MYDB | gzip | uuencode db_`date "%Y-\%m-%d"`.gz | mail -s `date +"%Y-\%m-%d"`_dump john@example.com

Обратные кавычки говорят оболочке запустить комментарий в кавычках и вставить его вывод в командную строку.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .