[Linux] crontab 작성 팁

TechNote/Linux 2009. 5. 17. 09:34 Posted by harim~♥
30 0 * * * /home/readytoact/bin/backup_local.sh  > /home/readytoact/backup/log/backup_local_`date +%Y%m%d`.log 2>&1
위와 같이 파일이름에 date 명령을 이용하여 시간을 갖는 이름을 생성하는 명령줄이 crontab에 포함시켜서 작동하면 다음과 같은 메일을 시스템으로 부터 받을 수 있다.

/bin/sh: Syntax error: EOF in backquote substitution
실제로 명령줄을 긁어 콘솔상에서 실행시키면 문제가 되지 않지만, crontab에서는 문제를 야기하며 실행이 되지 않는다. 이유인 즉, 날짜 형식을 지정하는 '%'라는 특수문자 놈 때문에 그런것이다. 그래서 시스템으로 부터 수신된 메일의 제목도 아래와 같이

Cron <readytoact@ubuntu> /home/readytoact/bin/get_gnukorea.sh  > /home/readytoact/backup/log/backup_log_gnukorea_`date +
+에서 끝나버린다.

명령줄을 다음과 같이 수정한다.

30 0 * * * /home/readytoact/bin/backup_local.sh  > /home/readytoact/backup/log/backup_local_`date +\%Y\%m\%d`.log 2>&1