명령이 자체적으로 작동하는 동안 Tar crontab이 작동하지 않습니다.

명령이 자체적으로 작동하는 동안 Tar crontab이 작동하지 않습니다.

나는이 crontab을 가지고 있습니다

* * * * * tar -czf /backup/$(date +%F--%T)-localusers.tgz /vagrant

이것은 작동하지 않습니다. 하지만 내가 그렇게 한다면

tar -czf /backup/$(date +%F--%T)-localusers.tgz /vagrant/

효과가있다.

무슨 일인지 아는 사람 있나요? 그런데 계속 이런 이메일이 옵니다.

N 10 (Cron Daemon) Thu Aug 23 10:43 28/1130 "Cron <root@localhost> tar -czf"

답변1

문제는 cron의 백분율 기호 처리로 인해 발생할 수 있습니다.

줄의 전체 명령 부분(개행 또는 % 문자까지)은 `/bin/sh 또는 crontab 파일의 SHELL 변수에 지정된 쉘에 의해 실행됩니다. 백슬래시()로 이스케이프하지 않는 한 명령의 백분율 기호(%)는 개행 문자로 변경되고 첫 번째 % 이후의 모든 데이터는 명령에 표준 입력으로 전송됩니다.

따라서 이스케이프해야 합니다.

* * * * * tar -czf /backup/$(date +\%F--\%T)-localusers.tgz /vagrant

관련 정보