Я пытаюсь создать crontab
, который создает новый файл .tar
каждую минуту каждый рабочий день, используя следующий код:
*/1 * * * 1,2,3,4,5 tar -cf /home/user/Archiv/$(date +"%Y%m%d%H%M").tar /home/user/Textverarbeitung/ -P
Это не работает. Почему?
cron
обработки %
как новые строки. Необходимо использовать, выходят из него т.е. используют \%
для получения литеральным %
, как используется в date
.
, Таким образом, Вам нужно:
date +"\%Y\%m\%d\%H\%M"
Или можно использовать сценарий и использовать все команды в сценарии и назвать сценарий от crontab
.
От man 5 crontab
:
Знаки процента (%) в команде, если не оставлено с обратной косой чертой (\), будут изменены в символы новой строки и все данные после того, как первый % будет отправлен в команду как стандартный вход. Нет никакого способа разделить единственную командную строку на несколько строк, как запаздывание оболочки "\".
Используйте \%
вместо %
- использование крона %
как новая строка.