나는 매우 약한 하드웨어의 스크린 세션에서 대화형 저주 프로그램을 실행하고 있습니다. 대부분의 경우 화면이 분리되어 있습니다. 이 프로그램이 이를 감지하고 기본적으로 화면에 그림 그리기를 중지하는 방법이 있나요?
답변1
irssi라는 스크립트가 있습니다.screen_away
화면 연결 여부에 따라 부재중 상태를 설정하세요. 작동 방식은 다음과 같습니다.
화면 내에서 실행되는 모든 쉘에는STY
환경 변수소켓 이름으로 설정합니다. 다음을 실행 screen -ls
하여 모든 소켓이 저장된 경로를 얻을 수 있습니다.
$ screen -ls
There are screens on:
11824.pts-24.mmrozek (Attached)
2306.ssh (Detached)
6615.chat (Attached)
3 Sockets in /var/run/screen/S-mmrozek.
의 실행 비트를 확인하십시오 /var/run/screen/.../$STY
. 설정되면 화면이 연결되고, 그렇지 않으면 분리됩니다. 위의 출력에서 세 개의 화면 중 두 개가 연결되어 있고 해당 실행 비트가 여기에 설정되어 있음을 알 수 있습니다.
$ ls -l /var/run/screen/S-mmrozek/
total 0
prwx------ 1 mmrozek mmrozek 0 Oct 5 13:04 11824.pts-24.mmrozek
prw------- 1 mmrozek mmrozek 0 Sep 23 23:45 2306.ssh
prwx------ 1 mmrozek mmrozek 0 Oct 5 12:43 6615.chat
screen -ls
포함된 줄의 출력을 계속 확인하여 $STY
또는로 끝나는지 확인할 수도 있지만 이렇게 하려면 계속해서 실행해야 합니다.(Attached)
(Detached)
screen