cronjob으로 생성된 파일에서 날짜를 올바르게 표시할 수 없습니다.

cronjob으로 생성된 파일에서 날짜를 올바르게 표시할 수 없습니다.

매일 데이터베이스 백업을 생성하는 cronjob 작업을 실행하고 있습니다. 일별 파일을 구분하기 위해 dump-(현재 날짜)로 이름을 지정했습니다. 백업 작업은 순조롭게 진행되었지만 날짜가 원래대로 해석되지 (dump-$(date '+%Y-%m-%d'))않았습니다 dump-14-12-2018.

#filename=dump-$(date '+%Y-%m-%d')
#*/3 * * * * cd /bdd-backups/ && mysqldump --all-databases > 
$filename.sql -u xxx -pxxx

답변1

80%가 주석 처리된 파일을 보여주셨기 때문에 문제가 무엇인지 말하기는 어렵지만 crontab 파일을 여러 줄의 쉘 스크립트로 취급하고 있는 것처럼 보입니다. 그렇지 않습니다. 각 라인은 독립적인 개체입니다. 따라서 한 줄의 변수에 값을 할당하고 다른 줄에서 사용할 수 없습니다.

모든 것을 한 줄에 넣거나 (장기적으로는 더 나을 것입니다) 및 date명령 을 별도의 스크립트 파일에 넣고 crontab에서 해당 스크립트를 실행하십시오.cdmysqldump

관련 정보