#linux
#linux
Вопрос:
Я пытаюсь создать резервную копию файла в crontab, но дату сохранения в определенной папке
В crontab
crontab -e
* * * * * echo "hi i am safwan" >> /home/safwan/linx/backup/"$(date "%Y_%m_%d").bak"
Но нет резервной копии файла.
Каково решение?
Комментарии:
1.
%
является специальным символомcrontab
и должен быть удвоен. man7.org/linux/man-pages/man5/crontab.5.html
Ответ №1:
Вы используете вложенные двойные кавычки, не экранируя внутренние.
Это сработало бы:
"$(date "%Y_%m_%d").bak"
Однако все эти кавычки не нужны. Вы можете удалить их все.
Редактировать:
Как указывалось в одном из комментариев к первоначальному вопросу, существует вторая проблема: %
в crontab есть специальный символ, поэтому вам нужно его экранировать:
$(date %Y_%m_%d).bak