특정 문자열로 열 이름을 얻는 방법은 무엇입니까?

특정 문자열로 열 이름을 얻는 방법은 무엇입니까?

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}'줄의 마지막 요소를 인쇄합니다

관련 정보