![cp 명령이 crontab에서 오류를 발생시킵니다.](https://linux55.com/image/141975/cp%20%EB%AA%85%EB%A0%B9%EC%9D%B4%20crontab%EC%97%90%EC%84%9C%20%EC%98%A4%EB%A5%98%EB%A5%BC%20%EB%B0%9C%EC%83%9D%EC%8B%9C%ED%82%B5%EB%8B%88%EB%8B%A4..png)
내 crontab에는 "data"라는 파일을 "Archive"라는 기존 디렉터리에 복사하고 날짜 스탬프를 추가하는 다음 명령이 있습니다. 명령줄에서 수동으로 실행하면 제대로 작동합니다.
01 0 * * * cp /home/data /home/Archive/data.$(date +%F)
그러나 cron이 (동일한 사용자로) 위 명령을 실행하면 파일이 복사되지 않고 다음 오류가 발생합니다.
cp:0653-437 2018은 디렉토리가 아닙니다
답변1
쉘 문제일 수도 있습니다. 실행되는 스크립트에 이 명령을 넣어보세요.
#!/bin/bash
스크립트를 수동으로 실행하여 작동하는지 확인한 다음 cron에서 실행해 보세요.
답변2
문제는 그러한 디렉토리가 없다는 것일 수 있습니다. 이 oneliner는 디렉토리 생성을 처리합니다.
01 0 * * * export NEWDIR=/home/Archive/data.$(date +%F) ; mkdir -p "$NEWDIR"; cp /home/data "$NEWDIR"