Linux命令总结--top命令

在linux命令中,想要查看进程可以使用ps,pstree等命令,只不过ps查看的是进程的某一时间的状态,如果想要查看动态,需要用到的命令是top。

下面我们就系统的学习一下top命令。

1.简介

   top命令能够显示很多的进程信息,我们需要将不同的部分进行分析,如下图:

 2.参数

top 命令执行过程都是以交互的形式存在。这些命令都是单字母的,如果在命令行中使用了s 选项, 其中一些命令可能会被屏蔽。

  • h 显示帮助画面,给出一些简短的命令总结说明
  • k 终止一个进程。
  • i 忽略闲置和僵死进程。这是一个开关式命令。
  • q 退出程序
  • r 重新安排一个进程的优先级别
  • S 切换到累计模式
  • s 改变两次刷新之间的延迟时间(单位为s),如果有小数,就换算成m s。输入0值则系统将不断刷新,默认值是5s
  • f或者F 从当前显示中添加或者删除项目
  • o或者O 改变显示项目的顺序
  • l 切换显示平均负载和启动时间信息
  • m 切换显示内存信息
  • t 切换显示进程和CPU状态信息
  • c 切换显示命令名称和完整命令行
  • M 根据驻留内存大小进行排序
  • P 根据CPU使用百分比大小进行排序
  • T 根据时间/累计时间进行排序
  • W 将当前设置写入~/.toprc文件中

其他使用技巧:

以下内容
出自【易百教程】,商业转载请联系作者获得授权,非商业转载请保留原文链接:https://www.yiibai.com/linux/top.html

  • 1.多U多核CPU监控
    top基本视图中,按键盘数字“1”,可监控每个逻辑CPU的状况:

    观察上图,服务器有0个逻辑CPU,实际上是1个物理CPU。再按数字键1,返回到top基本视图界面。

  • 2.高亮显示当前运行进程
    敲击键盘“b”(打开/关闭加亮效果),top的视图变化如下:

如上图中,进程id93211的“top”进程被加亮了,top进程就是视图第二行显示的唯一的运行态(runing)的那个进程,可以通过敲击“y”键关闭或打开运行态进程的加亮效果。

  • 3.进程字段排序
    默认进入top时,各进程是按照CPU的占用量来排序的,在下图中进程ID为32374的python进程排在第一(cpu占用94%),进程ID为653vmtools进程排在第二(cpu占用2.0%)。

敲击键盘“x”(打开/关闭排序列的加亮效果),top的视图变化如下:

可以看到,top默认的排序列是“%CPU”。

  • 4. 通过”shift + >”或”shift + <”可以向右或左改变排序列

下图是按一次”shift + >”的效果图,视图现在已经按照%MEM来排序。

实例2:显示 完整命令

命令:

top -c
Shell

输出:

top - 09:38:06 up  3:23,  2 users,  load average: 2.40, 2.19, 1.37
Tasks: 112 total,   4 running, 107 sleeping,   1 stopped,   0 zombie
%Cpu(s): 97.2 us,  1.8 sy,  0.0 ni,  0.0 id,  0.0 wa,  0.0 hi,  1.1 si,  0.0 st
KiB Mem :   999936 total,    74648 free,   130200 used,   795088 buff/cache
KiB Swap:  2097148 total,  2097148 free,        0 used.   672960 avail Mem

   PID USER      PR  NI    VIRT    RES    SHR S %CPU %MEM     TIME+ COMMAND
  3237 yiibai    20   0  123156   4376   1904 R 42.5  0.4  10:45.19 python run+
  3753 yiibai    20   0  123152   4380   1908 R 42.5  0.4   1:38.90 python run+
   653 root      20   0  302436   6024   4648 S  2.3  0.6   1:50.29 /usr/bin/v+
  3709 root      20   0       0      0      0 S  2.0  0.0   0:05.93 [kworker/u+
   652 chrony    20   0  115848   1892   1496 S  1.7  0.2   0:00.53 /usr/sbin/+
   476 root      20   0   34876   3152   2828 S  0.3  0.3   0:00.92 /usr/lib/s+
  2250 root      20   0       0      0      0 S  0.3  0.0   0:38.98 [kworker/0+
     1 root      20   0  128092   6708   3956 S  0.0  0.7   0:05.51 /usr/lib/s+
     2 root      20   0       0      0      0 S  0.0  0.0   0:00.02 [kthreadd]
     3 root      20   0       0      0      0 S  0.0  0.0   0:15.97 [ksoftirqd+
     7 root      rt   0       0      0      0 S  0.0  0.0   0:00.00 [migration+
     8 root      20   0       0      0      0 S  0.0  0.0   0:00.00 [rcu_bh]
     9 root      20   0       0      0      0 R  0.0  0.0   0:07.42 [rcu_sched]
    10 root      rt   0       0      0      0 S  0.0  0.0   0:05.48 [watchdog/+
Shell

实例3:以批处理模式显示程序信息

命令:

top -b
Shell

实例4:以累积模式显示程序信息

命令:

top -S
Shell

实例5:设置信息更新次数

命令:

top -n 2
Shell

说明:表示更新两次后终止更新显示

实例6:设置信息更新时间

命令:

top -d 3
Shell

说明:表示更新周期为3秒

实例7:显示指定的进程信息

命令:

top -p 3237
Shell
top - 09:40:32 up  3:26,  2 users,  load average: 3.07, 2.53, 1.62
Tasks:   1 total,   1 running,   0 sleeping,   0 stopped,   0 zombie
%Cpu(s): 91.8 us,  2.4 sy,  0.0 ni,  0.0 id,  0.0 wa,  0.0 hi,  5.8 si,  0.0 st
KiB Mem :   999936 total,    71276 free,   130352 used,   798308 buff/cache
KiB Swap:  2097148 total,  2097148 free,        0 used.   672960 avail Mem

   PID USER      PR  NI    VIRT    RES    SHR S %CPU %MEM     TIME+ COMMAND
  3237 yiibai    20   0  123156   4376   1904 R 34.1  0.4  11:46.46 python
 
原文地址:https://www.cnblogs.com/hanjiali/p/13950962.html