터미널에서는 명령을 실행할 수 있지만 crontab에서는 실행할 수 없습니다(날짜 문제)

터미널에서는 명령을 실행할 수 있지만 crontab에서는 실행할 수 없습니다(날짜 문제)

내 문제와 같은 질문을 많이 확인했지만 아직 해결책을 찾지 못했습니다.

다음 명령은 문제 없이 작동합니다.

rm -rf <PATH>/<pattern>*$(date +'%Y%m%d' -d "-2 days")*.csv

다음 줄로 crontab을 편집했습니다.

39 9  * * * rm -rf <PATH>/<pattern>*$(date +\'\%Y\%m\%d\' -d \"-2 days\")*.csv

하지만 crond가 내 명령을 실행하면 다음 오류가 발생합니다.

> date: extra operand `days"'
Try `date --help' for more information.

아직 해결책을 찾지 못했어요. 혹시 아이디어가 있으신가요?

삭제할 파일이 많고 rm이 find(-exec rm) 명령보다 더 잘 작동합니다.

답변1

crontab에서는 따옴표를 이스케이프 처리할 필요가 없습니다. 대부분 %의 crontab에서만 특별합니다.

관련 정보