CPU를 90% 이상 사용하는 서버에서 가장 높은 PID와 명령을 얻고 싶습니다. 변수에 CPU%를 원합니다. 아래 ps 명령을 사용하여 시도했습니다.
ps -eo pid,cmd,%cpu --sort=-%cpu | head -2
PID CMD %CPU
987 dd if=/dev/zero of=/dev/nul 63.6
AWK를 사용하려고 하는데 dd 명령이 다른 열로 표시되기 때문에 잘못된 정보가 표시됩니다.
CPU%를 얻을 수 있는 방법이 있나요?
답변1
얻으려면 다음 방법을 사용하십시오.맨 위CPU%:
ps -eo %cpu --sort=-%cpu --no-headers | head -1
--no-headers
머리글 행을 전혀 인쇄하지 마십시오
답변2
다음 명령은 %CPU를 제공합니다.
ps -eo pid,cmd,%cpu --sort=-%cpu | head -2| tail -1 | awk '{print $NF}'
tail -1
- 실제 숫자가 포함된 마지막 줄을 제공합니다.awk 'print $NF}'
줄의 마지막 요소를 인쇄합니다