linux 프로세스별 CPU 사용량 결과 원하는 대로 출력 해보기
원하는 형태로 프로세스 정보 출력
$ ps -eo user,pid,pcpu,cmd
USER PID %CPU CMD
root 1 0.0 /sbin/init splash
root 2 0.0 [kthreadd]
root 3 0.0 [rcu_gp]
root 4 0.0 [rcu_par_gp]
root 5 0.0 [netns]
root 7 0.0 [kworker/0:0H-events_highpri]
root 9 0.0 [kworker/0:1H-kblockd]
root 10 0.0 [mm_percpu_wq]
root 11 0.0 [rcu_tasks_rude_]
root 12 0.0 [rcu_tasks_trace]
root 13 0.0 [ksoftirqd/0]
root 14 0.0 [rcu_sched]
root 15 0.0 [migration/0]
root 16 0.0 [idle_inject/0]
root 18 0.0 [cpuhp/0]
프로세스 정보 CPU 사용량 순으로 정렬하기
$ ps -eo user,pid,pcpu,cmd --sort -pcpu
USER PID %CPU CMD
root 1014 0.1 /usr/bin/containerd
root 5678 0.1 java -Dspring.profiles.active=prod -jar app.jar
root 1 0.0 /sbin/init splash
root 2 0.0 [kthreadd]
root 3 0.0 [rcu_gp]
root 4 0.0 [rcu_par_gp]
root 5 0.0 [netns]
root 7 0.0 [kworker/0:0H-events_highpri]
root 9 0.0 [kworker/0:1H-kblockd]
root 10 0.0 [mm_percpu_wq]
root 11 0.0 [rcu_tasks_rude_]
root 12 0.0 [rcu_tasks_trace]
root 13 0.0 [ksoftirqd/0]
root 14 0.0 [rcu_sched]
root 15 0.0 [migration/0]
root 16 0.0 [idle_inject/0]
프로세스 CPU 사용량 높은 순으로 n개 출력
while true
do
ps -eo user,pid,pcpu,cmd --sort -pcpu |head -n 16
sleep 1
clear
done