我试图将最繁忙进程的PID存储在BASH脚本中的变量中。
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 915 1.7 0.8 319948 34088 tty7 Ssl+ May05 3:24 /usr/lib/xorg/X
root 920 0.0 0.0 15940 116 tty1 Ss+ May05 0:00 /sbin/agetty --
deego 25690 0.1 0.1 22376 4900 pts/1 Ss 02:06 0:00 bash
deego 25704 101 0.0 12536 908 pts/1 R 02:07 0:03 /bin/bash ./busy_wait
deego 25705 0.0 0.0 37364 3272 pts/1 R+ 02:07 0:00 ps au
当我输入命令时:
ps au --sort = -pcpu |头-2 |尾巴-1
deego 25704 99.5 0.0 12536 908 pts/1 R 02:07 0:46 /bin/bash ./busy_wait
它给了我正确的排序。
但是,当我在脚本中使用awk将变量分配给变量时,变量似乎总是被分配错误的PID(总是915)
busyPID=$(ps au --sort=-pcpu | head -2 | tail -1 | awk '{print $2}')
答案 0 :(得分:0)
为什么不压缩标题并抓住第一行?
busy_pid=$(ps hau --sort=-pcpu | awk '{print $2; exit}')