지난 7일 동안 Linux에서 실행 중인 프로세스를 식별하는 방법은 무엇입니까?
답변1
시작은 다음과 같습니다.
ps -eoetime,pid,user,cmd --sort -etime
표시할 정보를 선택할 수 있습니다. man ps
긴 목록을 참조하세요. 위 명령은 모든 프로세스를 경과 시간의 내림차순으로 나열합니다. 최소 7일 동안 실행 된 grep
프로세스 awk
만 표시하려면 데이터에 대해 작업을 수행해야 합니다.etime
pid
불행하게도 이 etime
형식은 스크립트보다 사람을 위해 더 많이 설계되었지만 다음은 작동할 것입니다(아직 테스트하지는 않았지만).
ps -eoetime=,pid= | awk 'int(substr($1,1,index($1,"-"))) >= 7 { print }'
명령줄 옵션에 대한 간략한 설명:
-e show all processes
-eo... same as -e -o...
-oetime=,pid= for each process, print the elapsed time and pid.
The '=' suppress the column headers
--sort -etime sort the processes in descending order by elapsed time
(+etime would have been ascending order)