os.kill과 함께 SIGSTOP 및 .SIGCONT 명령을 사용하는 python 스크립트를 사용하여 프로세스를 일시 중지하거나 다시 시작할 수 있습니다. 관련 PID가 일시 중지되었거나 재개 된 상태인지 여부를 확인하는 방법이 있습니까?Linux PID가 일시 중지되었는지 확인하는 방법이 있습니까?
7
A
답변
4
프로세스에 대한 정보는 해당/proc 디렉토리 (/proc/<PID>
)에서 찾을 수 있습니다.
open(os.path.join('/proc', str(pid), 'stat')).readline().split()[2]=='T'
편집 : 당신은 psuti리터을 사용할 수 있습니다
re.sub(r'\(.*\)', '()', open(os.path.join('/proc', str(pid), 'stat')).readline()).split()[2]=='T'
4
ps를 호출하고 STAT 값을 확인하십시오. D 인터럽트 가능 슬립 (대개 I/O) R 실행 중이거나 실행 가능 (실행 대기열에서) S 인터럽트 가능 슬립 (이벤트 대기 중) T 작업 제어 신호 또는 추적 중이므로 중지됨. W 페이징 (2.6.xx 커널 이후 유효하지 않음) X가 죽었습니다 (절대로 보지 말 것) Z 프로세스가 종료되었습니다 ("좀비") 프로세스가 종료되었지만 부모에 의해 종료되지 않았습니다.
+0
PS axo fname, stat, pid를 사용했는데, 당신이 말했던 것처럼 작동했습니다. STAT 값이 그랬는지 몰랐습니다. – CobraBytez
2
:이 다음 표현식은 원래와 (아마도 희귀 한) 버그가 수정되었습니다 특히,이 파이썬 표현식의 실행 상태를 확인할 수 있습니다
>>> import psutil
>>> pid = 1243
>>> p = psutil.Process(pid)
>>> p.status
0
>>> str(p.status)
'running'
>>> p.status == psutil.STATUS_RUNNING
True
>>>
>>> p.suspend()
>>> p.status
3
>>> str(p.status)
'stopped'
>>> p.status == psutil.STATUS_STOPPED
True
>>>
>>> p.resume()
>>> str(p.status)
'running'
>>>
관련 문제
- 1. 어떤 서비스가 중지되었는지 직접 확인하는 대안?
- 2. PID가 지정된 프로세스가 실행 중인지 확인하는 방법은 무엇입니까?
- 3. 자녀의 PID가 있습니까?
- 4. 일시 중지 Linux 날짜 시간
- 5. (Linux) PID가 붙어있는 USB 장치에서/dev/input/eventX를 가져옵니다. VID
- 6. 예외가 발생하는지 확인하는 방법이 있습니까?
- 7. ExternalInterface.call의 출처를 확인하는 방법이 있습니까?
- 8. bash 스크립팅에서 키가 작동 중지되었는지 어떻게 확인할 수 있습니까?
- 9. pid가 X 인 프로세스가 좀비인지 확인하는 방법은 무엇입니까?
- 10. pid가 현재 사용자 세션에 속하는지 확인하는 방법은 무엇입니까?
- 11. 사용자가 현재 유휴 상태인지 확인하는 방법이 있습니까?
- 12. 함수가 unittest에서 실행되는지 여부를 확인하는 방법이 있습니까?
- 13. win32 세마포어의 현재 카운트를 확인하는 방법이 있습니까?
- 14. 사용자가 JQuery를 사용하여 로그인했는지 확인하는 방법이 있습니까?
- 15. 변수가 집합에 속하는지 확인하는 빠른 방법이 있습니까?
- 16. 컬을 사용하여 클라이언트를 확인하는 방법이 있습니까?
- 17. 내 프록시가 온라인 상태인지 확인하는 방법이 있습니까?
- 18. 쿠키가 PHP에서 httponly인지 확인하는 방법이 있습니까
- 19. ejabberd : 사용자가 관리자인지 확인하는 방법이 있습니까?
- 20. JDBC 트랜잭션이 유효한지 확인하는 방법이 있습니까?
- 21. Facebook : 특정 권한이 있는지 확인하는 방법이 있습니까?
- 22. 노래가 iPhone에 있는지 확인하는 방법이 있습니까?
- 23. Linux에서 컨텍스트 스위치의 원인을 확인하는 방법이 있습니까?
- 24. JavaScript에서 변수가 날짜인지 확인하는 방법이 있습니까?
- 25. ColdFusion 이메일 - 이메일이 전송되었는지 확인하는 방법이 있습니까?
- 26. 함수가 컴파일 된 JIT인지 확인하는 방법이 있습니까?
- 27. 복제 기사가 올바른지 확인하는 쉬운 방법이 있습니까?
- 28. (Rails) 필드의 데이터 유형을 확인하는 방법이 있습니까?
- 29. Silverlight의 DataGrid에 포커스가 있는지 확인하는 방법이 있습니까?
- 30. PHP가 JS에서만로드되고 있는지 확인하는 방법이 있습니까?
os.path.join을 사용하지 않는다! ... 잠깐, 이것은 순수한 리눅스 질문이다. – janislaw
@ janislaw - 감사합니다. –