저는 Linux screen
명령을 사용하여 서버에서 백그라운드 스크립트를 실행합니다. 스크립트는 매일 실행되어야 하지만 특정 시간 범위(오전 7시부터 오후 9시) 내에 실행되어야 합니다. 현재로서는 매일 밤 9시에 수동으로 종료하고 screen
(명령 사용 ctrl+c
) 다음날 아침 7시에 다시 생성합니다(명령 사용).exit
screen
screen -S <NAME>
screen
오후 9시에서 오전 7시 사이에 "자동으로" 잠을 자는 방법이 있나요 ? (이렇게 하면 매일 수동으로 개입할 필요가 없습니다.)
답변1
나는 screen을 사용하지 않을 것이지만, 원한다면 다음과 같이 할 수 있습니다:
0 7 * * * some_user sh -c 'screen -d -m -S 7to9am -s /usr/local/bin/the_script.sh ; sleep 2h ; screen -X -S 7to9am quit'
끝에/etc/crontab
이것옳은이를 수행하는 방법은 화면 없이 하는 것입니다.
0 7 * * * some_user timeout 2h /usr/local/bin/the_script.sh