crontab에서 퍼센트 기호가 실행되지 않는 명령


11

다음 crontab이 작동하지 않습니다.

# TEST LINE DOES DOT RUN
*/1 * * * * /bin/echo 'test '`/bin/date +%Y-%m-%d` >> /tmp/test

나는 또한 그것을 시작하려고 시도했다.

SHELL=/bin/bash

업데이트 : 나는 백틱 문자`가 악당이라고 생각했지만 아래 답변에서 알 수 있듯이 백분율 %는 범인이었습니다!


테스트 라인은 한 시간에 한 번만 실행됩니다. 테스트하려는 것이 아닐 수도 있습니다.
user535733

# mh dom mon dow command
lpanebr

당신이 옳습니다. 나는 매분마다 실행되도록 * / 1로 변경했습니다. 명령에 무언가가 있습니다. 것 같다/bin/date +%Y-%m-%d
lpanebr

답변:


13

에서 /bin/date +%Y-%m-%d각을 탈출 할 필요 %\따라 이 사람 페이지 :

"여섯 번째"필드 (나머지 행)는 실행할 명령을 지정합니다. 줄 바꿈 또는 % 문자까지 줄의 전체 명령 부분은 / bin / sh 또는 cronfile의 SHELL 변수에 지정된 쉘에 의해 실행됩니다. 백 슬래시 ()로 이스케이프되지 않는 한 명령의 백분율 기호 (%)는 줄 바꿈 문자로 변경되며 첫 번째 % 이후의 모든 데이터는 표준 입력으로 명령에 전송됩니다.


2
감사! 실제 문제에 맞게 질문을 편집하겠습니다.
lpanebr
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.