시간 초과로 프로세스 종료

시간 초과로 프로세스 종료

시간 초과 프로세스를 시작하고 싶습니다. SIGINT 및 SIGKILL을 사용하여 프로세스를 종료하려면 어떻게 해야 합니까? 프로그램이 5초 이내에 종료되지 않으면 SIGINT가 전송됩니다. 총 10초 후에도 계속 실행 중인 경우 SIGKILL을 보냅니다.

timeout -s SIGINT nano; timeout -s SIGKILL nano를 수행했지만 작동하지 않습니다. 누구든지 도와주실 수 있나요?

답변1

timeout 명령에는 사용하지 않는 기간 옵션이 있습니다.

매뉴얼에 따르면:

시간 초과 [옵션] 기간 명령 [ARG]...

그럼에도 불구하고 사용 중인 구성은 작동하지 않습니다. (예: 두 개의 별도 명령 사용)

실제로는 timelimit 명령을 사용하는 것이 더 일관성이 있습니다. 설치하세요:

sudo apt-get install timelimit

매뉴얼에서:

timelimit [-pq] [-S Killsig] [-s warningsig] [-T Killtime] [-t 경고 시간] 명령 [매개변수...]

링크:

인간의 시간 제한

http://manpages.ubuntu.com/manpages/utopic/man1/timelimit.1.html

내 스크립트의 실제 사용 예는 다음과 같습니다.

timelimit -q -t1 -T30 command

관련 정보