crontab을 처음 사용하는 사용자로서 주기적으로 날짜/시간을 stdout에 입력하여 학습하려고 합니다.

crontab을 처음 사용하는 사용자로서 주기적으로 날짜/시간을 stdout에 입력하여 학습하려고 합니다.

crontab을 사용하여 정기적으로 bash 명령을 실행하는 방법을 배우려고 합니다. 나는 먼저 crontab이 매분 표준 출력으로 날짜와 시간을 읽도록 하는 것과 같은 간단한 것을 시도해 볼 것이라고 생각했습니다. 하지만 이렇게 하려고 하면 다음과 같은 일이 발생합니다.

Nicholass-MacBook-Air-2:cron_test nick$ crontab 1 * * * * date
crontab: 1: No such file or directory

어떻게 작동하게 합니까?

감사해요,

답변1

터미널에 다음 줄을 입력하십시오

crontab -e

다음 줄을 입력하고 파일을 저장합니다.

1 * * * * date >> /tmp/output.txt

잠시 후 출력 파일을 봅니다.

cat /tmp/output.txt

답변2

crontab명령은 명령줄에서 cron 작업 항목을 가져오지 않습니다. 크론 작업 항목을 추가하려면 실행하여 crontab -e편집기를 엽니다.

macOS에서는 이것이 작동하지 않으므로 cron 항목이 포함된 텍스트 파일을 준비하고 제공해야 합니다.저것입력하다 crontab:

$ vi crontab.txt   # use whatever editor you want

여기에 항목을 추가합니다.

* * * * * date >>/tmp/date.out

이 항목은 명령이 1분마다, 영원히(또는 cron 작업이 제거될 때까지) 실행되도록 예약 하고 실행될 때마다 새 출력 줄을 추가하여 date출력을 작성합니다 ./tmp/date.out

파일을 저장하고 편집기를 종료합니다.

그런 다음 실제로 cron 항목을 로드합니다.

$ crontab crontab.txt

하지만 이 점 참고해주세요현재 사용자의 기존 crontab 항목을 모두 바꿉니다.,그렇다면.

도착하다다음에 추가macOS의 항목은 기존 항목을 유지하면서 먼저 crontab.txt기존 crontab 항목을 사용하여 파일을 생성 및 편집하고 다시 로드합니다.

$ crontab -l >crontab.txt
$ vi crontab.txt
$ crontab crontab.txt

제거하다모두항목, 사용 crontab -r.

macOS의 Cron은 특정 예약 시간에 대한 , 및 같은 짧은 이름도 이해할 @reboot@hourly있습니다 @daily. @weekly바라보다crontab(5)수동시스템에 대해 자세히 알아보세요( man 5 crontab).

관련 정보