cron - 실행할 명령이 있으면 화면이 작동하지 않습니다

cron - 실행할 명령이 있으면 화면이 작동하지 않습니다

다음과 같이 작업을 설정하면 cron모든 것이 잘 작동합니다. 새 화면 세션이 시작되고 나중에 액세스할 수 있습니다.

* * * * * screen -d -m -S test

그러나 cron항목이 아래와 같다면 screen 세션이 시작되지 않았거나 최소한 검색할 수 없는 것입니다( screen -ls찾을 수 없음).

* * * * * screen -d -m -S test date
* * * * * screen -d -m -S test bash -c “date”

위 명령 중 하나를 명령줄에서 직접 실행하면 모든 것이 예상대로 작동합니다.
하지만 제가 생각할 수 있는 모든 명령 조합을 시도했지만 그 중 아무 것도 작동하지 않았으므로 뭔가 빠진 것이 분명합니다.

답변1

screen시작된 세션이 종료되었기 때문에 다시 연결할 수 없습니다 . 에 명령을 실행하면 screen해당 명령이 실행되고 즉시 종료됩니다.

답변2

화면은 각 사용자를 위한 것입니다. Cron은 백그라운드 예약 작업입니다. 특정 cron의 출력을 알아야 하는 경우 파일로 출력하거나 이메일로 보내도록 지시하는 것이 좋습니다.

제 생각에는 스크린 세션을 실행하는 것이 실제로 목적은 아닙니다.

관련 정보