Bash 스크립트에서 일시 중지 이력서를 캡처하는 방법

Bash 스크립트에서 일시 중지 이력서를 캡처하는 방법

현재 아래와 같이 종료를 포착하고 처리하는 지속적으로 실행되는 bash 스크립트(osx)가 있습니다.

trap onshutdown TERM

트랩이 일시정지/재개도 처리하도록 하려면 어떻게 해야 합니까?

trap onsuspend ?

trap onresume ?

답변1

SIGTSTP 및 SIGCONT 신호를 찾고 있습니다. 이 시도:

trap onsuspend TSTP
trap onresume  CONT

답변2

프로그램이 중단되고 안정적으로 알 수 없으므로 명명된 파이프를 설정하고 감시 스크립트를 생성합니다.

5분 또는 15분마다 반복하고 현재 타임스탬프를 명명된 파이프에 기록한 다음 절전 모드로 전환됩니다.

그런 다음 해당 파이프에서 데이터를 읽고 읽기 사이에 계산을 수행할 수 있습니다. 시간이 1~2개 이상 점프하면 이미 잠들어 있는 것입니다.

필요한 시간의 정확성에 따라 /private/var/log/system.log 파일(및 가능하면 /private/var/log/system.0.log.gz)을 추적하여 마지막 sleep/ 커널 로깅에 의해 제공되는 깨우기 시간입니다.

이는 신호에 의존하는 것보다 더 많은 작업을 수행합니다. 또한 어시스턴트가 자체적으로 실행되도록 하고 원하는 신호를 스크립트에 보낼 수도 있습니다.

하나는 6개, 다른 하나는 66개였습니다.

관련 정보