ฉันจะดูได้อย่างไรเมื่อกระบวนการเริ่มต้นโดยสมมติว่าฉันรู้จัก pid (บน Linux)
ฉันจะดูได้อย่างไรเมื่อกระบวนการเริ่มต้นโดยสมมติว่าฉันรู้จัก pid (บน Linux)
คำตอบ:
หากคุณต้องการเฉพาะเวลาเริ่มต้นคุณสามารถเลือกฟิลด์และระงับส่วนหัวได้โดยทำดังนี้
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
"ps -f" - มันอยู่ใน man pages
ps -f -p yourpid
awk '{print $22}' /proc/$pid/stat
- ให้เวลาเริ่มต้นในระยะเวลาอันสั้นหลังจากบูต
หากมีกระบวนการเดียวที่มีชื่อที่กำหนด (เช่นopenvpn
) บนโฮสต์คุณสามารถทำได้:
ps -p `pgrep openvpn` -o lstart=
วิธีหนึ่งที่คุณสามารถ ps -f | grep ตามที่คุณบอกว่าคุณ pid ฉลาดอื่นคุณสามารถฉลาดในด้านบน