Linux shell top 命令
Linux shell top 命令用于实时显示 process 的动态。
使用权限: 所有可登陆用户。
top 命令语法格式
top [-] [d delay] [q] [c] [S] [s] [i] [n] [b]
选项
- d : 改变显示的更新速度,或是在交谈式指令列( interactive command)按 s
- q : 没有任何延迟的显示速度,如果使用者是有 superuser 的权限,则 top 将会以最高的优先序执行
- c : 切换显示模式,共有两种模式,一是只显示执行档的名称,另一种是显示完整的路径与名称S : 累积模式,会将己完成或消失的子行程 ( dead child process ) 的 CPU time 累积起来
- s : 安全模式,将交谈式指令取消, 避免潜在的危机
- i : 不显示任何闲置 (idle) 或无用 (zombie) 的行程
- n : 更新的次数,完成后将会退出 top
- b : 批次档模式,搭配 "n" 参数一起使用,可以用来将 top 的结果输出到档案内
范例
显示进程信息
[root@localhost ~]# top top - 01:12:21 up 1:07, 1 user, load average: 0.00, 0.01, 0.05 Tasks: 94 total, 3 running, 86 sleeping, 5 stopped, 0 zombie %Cpu(s): 0.0 us, 0.3 sy, 0.0 ni, 99.7 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st KiB Mem : 999696 total, 646596 free, 135956 used, 217144 buff/cache KiB Swap: 2097148 total, 2097148 free, 0 used. 685508 avail Mem PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 995 root 20 0 562392 18604 5880 S 0.3 1.9 0:00.85 tuned 1159 root 20 0 0 0 0 S 0.3 0.0 0:03.16 kworker/0:2 1304 root 20 0 157584 2108 1496 R 0.3 0.2 0:00.02 top ...
显示完整命令
[root@localhost ~]# top -c top - 01:13:05 up 1:08, 1 user, load average: 0.00, 0.01, 0.05 Tasks: 94 total, 2 running, 87 sleeping, 5 stopped, 0 zombie %Cpu(s): 0.0 us, 0.3 sy, 0.0 ni, 99.7 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st KiB Mem : 999696 total, 646860 free, 135708 used, 217128 buff/cache KiB Swap: 2097148 total, 2097148 free, 0 used. 685772 avail Mem PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 638 root 20 0 305080 6124 4764 R 0.7 0.6 0:06.88 /usr/bin/vmtoolsd 1 root 20 0 128164 6812 4044 S 0.0 0.7 0:01.31 /usr/lib/systemd/systemd --switched-root --system --deseriali+ 2 root 20 0 0 0 0 S 0.0 0.0 0:00.00 [kthreadd] 3 root 20 0 0 0 0 S 0.0 0.0 0:00.80 [ksoftirqd/0] ...
以批处理模式显示程序信息
[root@localhost ~]# top -b top - 01:13:50 up 1:09, 1 user, load average: 0.00, 0.01, 0.05 Tasks: 94 total, 1 running, 88 sleeping, 5 stopped, 0 zombie %Cpu(s): 0.0 us, 0.0 sy, 0.0 ni,100.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st KiB Mem : 999696 total, 646844 free, 135736 used, 217116 buff/cache KiB Swap: 2097148 total, 2097148 free, 0 used. 685760 avail Mem PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 1 root 20 0 128164 6812 4044 S 0.0 0.7 0:01.31 systemd 2 root 20 0 0 0 0 S 0.0 0.0 0:00.00 kthreadd 3 root 20 0 0 0 0 S 0.0 0.0 0:00.80 ksoftirqd/0 5 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kworker/0:0H ...
以累积模式显示程序信息
[root@localhost ~]# top -S top - 01:14:32 up 1:09, 1 user, load average: 0.05, 0.03, 0.05 Tasks: 95 total, 1 running, 89 sleeping, 5 stopped, 0 zombie %Cpu(s): 0.0 us, 0.0 sy, 0.0 ni,100.0 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st KiB Mem : 999696 total, 646828 free, 135752 used, 217116 buff/cache KiB Swap: 2097148 total, 2097148 free, 0 used. 685744 avail Mem PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 641 root 20 0 210180 3976 3132 S 0.3 0.4 0:00.41 rsyslogd 1308 root 20 0 157584 2116 1504 R 0.3 0.2 0:00.02 top
设置信息更新次数
[root@localhost ~]# top -n 2 #表示更新两次后终止更新显示 top - 01:15:17 up 1:10, 1 user, load average: 0.02, 0.02, 0.05 Tasks: 95 total, 2 running, 88 sleeping, 5 stopped, 0 zombie %Cpu(s): 0.3 us, 0.0 sy, 0.0 ni, 99.3 id, 0.3 wa, 0.0 hi, 0.0 si, 0.0 st KiB Mem : 999696 total, 646828 free, 135752 used, 217116 buff/cache KiB Swap: 2097148 total, 2097148 free, 0 used. 685744 avail Mem PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 638 root 20 0 305080 6124 4764 S 0.3 0.6 0:07.14 vmtoolsd 1223 root 20 0 145700 5332 4064 S 0.3 0.5 0:00.47 sshd 1 root 20 0 128164 6812 4044 S 0.0 0.7 0:01.31 systemd
设置信息更新时间
# top -d 3
//表示更新周期为3秒
显示指定的进程信息
# top -p 139
//显示进程号为139的进程信息,CPU、内存占用率等
显示更新十次后退出
top -n 10
使用者将不能利用交谈式指令来对行程下命令
top -s
将更新显示二次的结果输入到名称为 top.log 的档案里
top -n 2 -b < top.log