Linux-프로세스가 언제 시작되었는지 어떻게 알 수 있습니까?


23

pid를 알고 있다고 가정하면 프로세스가 시작된 시점을 어떻게 알 수 있습니까? (Linux에서)

답변:


30

시작 시간 만 원하는 경우 다음을 수행하여 필드를 선택하고 헤더를 억제 할 수 있습니다.

 ps -p YOURPID -o lstart=

출력은 다음과 같습니다.

 Mon Dec 14 17:17:16 2009

이는 ctime(3)형식과 당신이 관련 부분을 분할 구문 분석 할 수 있습니다.

다른 시작과 같은 필드 start, stime, bsdstart그리고 start_time세 시간 (24 시간 후에 날짜 만 예를 들어, 표시됩니다).

그러나 추가 구문 분석없이 최근에 시작한 프로세스에 직접 사용할 수 있습니다.

ps -p YOURPID -o stime=

다음과 같은 결과가 출력됩니다.

09:26

이것은 맥에서도 작동합니다!
— Brad Parks


8

awk '{print $22}' /proc/$pid/stat -부팅 후 지피에서 시작 시간을 제공합니다


답이 모호하다!
— wzzrd

수수께끼 가동 시간이 '17 : 57 '인 시스템에는 시작 시간이'727975 '인 프로세스가 있습니다. 8 일 후에 프로세스가 시작된 것 같습니까?
— Scott Pack

1
실제로 jiffies입니다 (100 / 초)
— MarkR

1
너무 모호한 방법! 게다가, 이제 부팅 시간을 조회하고 수학을 수행하여 지프를 초로 변환하고 오프셋을 계산하여 클럭 시간을 가져와야합니다. 쉽지만 너무 많은 단계입니다. Chopper3의 답변을 참조하십시오.
— 추후 공지가있을 때까지 일시 중지되었습니다.

초당 지프의 양은 시스템 변수 HZ에 저장됩니다. 쉘에서 계산하기 위해 이것을 사용할 수 있습니다 : stackoverflow.com/a/44524937/1950345
— reichhart

0

openvpn호스트에 주어진 이름 (예 :)을 가진 단일 프로세스가있는 경우 다음을 수행 할 수 있습니다.

ps -p `pgrep openvpn` -o lstart=

-1

당신이 ps -f | grep 할 수있는 한 가지 방법은 당신이 당신이 지혜롭게도 할 수있는 pid 다른 현명한

당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.