"crontab"을 사용하여 분당 한 번씩 새 아카이브를 만듭니다.

"crontab"을 사용하여 분당 한 번씩 새 아카이브를 만듭니다.

다음 코드를 사용하여 영업일 기준으로 매분마다 crontab새 파일을 만드는 파일을 만들려고 합니다 ..tar

*/1 * * * 1,2,3,4,5 tar -cf /home/user/Archiv/$(date +"%Y%m%d%H%M").tar /home/user/Textverarbeitung/ -P

이것은 작동하지 않습니다. 왜?

답변1

cron개행 문자로 취급됩니다 %. Escape it을 사용해야 합니다. 즉, 에서 사용된 대로 \%리터럴을 얻으려면 사용해야 합니다 .%date

따라서 다음이 필요합니다.

date +"\%Y\%m\%d\%H\%M" 

또는 스크립트를 사용하고 스크립트의 모든 명령을 사용하고 에서 스크립트를 호출할 수 있습니다 crontab.

에서 man 5 crontab:

백슬래시(\)로 이스케이프하지 않는 한 명령의 백분율 기호(%)는 개행 문자로 변경되고 첫 번째 % 이후의 모든 데이터는 표준 입력으로 명령에 전송됩니다. 쉘의 후행 "\"처럼 단일 명령줄을 여러 줄로 분할할 수 있는 방법은 없습니다.

답변2

\%대신 사용 %- cron은 %개행 문자로 사용됩니다.

관련 정보