• Linux命令(1)——top命令


    一、功能

      显示当前系统正在执行的进程的相关信息【进程ID、内存占用率、CPU占用率等】

      性能分析工具  实时动态显示(系统中各个进程的资源占用情况)

    二、用法

    • -b                         批处理
    • -c                              显示完整的治命令
    • -I                               忽略失效过程
    • -s                              保密模式
    • -S                             累积模式
    • -i<时间>                   设置间隔时间
    • -u<用户名>              指定用户名
    • -p<进程号>              指定进程
    • -n<次数>            循环显示的次数

    三、实例

    1.top - 23:50:48 up 12:28,  2 users,  load average: 0.07, 0.05, 0.05
    系统当前时间23:50:48  12:28系统运行时间  两个user登录系统 1分钟、5分钟 10分钟的负载情况 (load average是每隔五秒钟检查一次活跃的进程数,按特定的算法计算得来,次数/CPU数量,若大于5表名系统超负荷运转)
    2.Tasks: 414 total, 3 running, 411 sleeping, 0 stopped, 0 zombie
    系统共有414个进程数,3个运行中,414个休眠 停止状态0个 僵尸状态0个
    3.%Cpu(s): 62.7 us,   9.0 sy, 0.0 ni,       28.3 id, 0.0 wa, 0.0 hi,           0.0 si, 0.0 st
    用户空间占用CPU的百分比, 内核空间, 改变过优先级的进程, 空闲cpu,   IO等待 硬中断(Hardware IRQ) 软中断(Software Interrupt) 4.KiB Mem :
    3866920 total, 1353744 free, 734100 used, 1779076 buff/cache
            物理内存总量   空闲内存总量    使用中的      缓存的 5.KiB Swap:
    4064252 total, 4064252 free, 0 used. 2848820 avail Mem  交换分区   交换区总量      空闲交换区 空闲交换区  

      第四行中使用中的内存总量(used)指的是现在系统内核控制的内存数,空闲内存总量(free)是内核还未纳入其管控范围的数量。纳入内核管理的内存不见得都在使用中,还包括过去使用过的现在可以被重复利用的内存,内核并不把这些可被重新使用的内存交还到free中去,因此在linux上free内存会越来越少,但不用为此担心。

     如果出于习惯去计算可用内存数,这里有个近似的计算公式:第四行的free + 第四行的buffers + 第五行的cached,对于内存监控,在top里我们要时刻监控第五行swap交换分区的used,如果这个数值在不断的变化,说明内核在不断进行内存和swap的数据交换,这是真正的内存不够用了

    进程ID user 进程优先级 nice值(负值表示高优先级) 进程使用的虚拟内存总量(单位kb,VIRT=SWAP+RES)  RES(进程使用的、未被换出的物理内存大小,单位kb,RES=CODE+DATA)  SHR(共享内存大小) S(进程状态 D不可中断的睡眠状态 R运行 S睡眠 T跟踪/停止 Z僵尸进程)
    %CPU(上次更新到现在的CPU时间占用百分比)  %MEM(进程使用的物理内存百分比)  TIME+(进程使用的CPU时间总计,单位1/100秒)  COMMAND(进程名称 命令名/命令行)
    PID
    USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 3303 zdl 20 0 1566260 278576 45080 R 40.7 7.2 0:57.72 gnome-shell 2445 root 20 0 247116 53400 9448 S 27.2 1.4 0:44.12 Xorg 12396 zdl 20 0 556204 22728 12736 S 2.0 0.6 0:23.32 gnome-terminal- 3513 zdl 20 0 377804 18736 14708 S 0.7 0.5 0:50.03 vmtoolsd 1 root 20 0 126556 7368 2616 S 0.3 0.2 0:06.93 systemd 137 root 20 0 0 0 0 S 0.3 0.0 0:01.88 rcu_sched 3079 zdl 20 0 38264 2264 932 S 0.3 0.1 0:00.24 dbus-daemon 3359 zdl 20 0 576764 8864 5168 S 0.3 0.2 0:01.50 caribou 2 root 20 0 0 0 0 S 0.0 0.0 0:00.05 kthreadd 3 root 20 0 0 0 0 S 0.0 0.0 0:00.12 ksoftirqd/0 7 root rt 0 0 0 0 S 0.0 0.0 0:00.00 migration/0 8 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcu_bh 9 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/0 10 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/1 11 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/2 12 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/3 13 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/4 14 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/5 15 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/6 16 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/7 17 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/8 18 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/9 19 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/10 20 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/11 21 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/12 22 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/13 23 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/14 24 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/15 25 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/16 26 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/17 27 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/18 28 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/19 29 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/20 30 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/21 31 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/22 32 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/23 33 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/24 34 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/25 35 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/26 36 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/27 37 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/28 38 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/29 39 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/30 40 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/31 41 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/32 42 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/33 43 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/34 44 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/35 45 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/36 46 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/37 47 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/38 48 root 20 0 0 0 0 S 0.0 0.0 0:00.00 rcuob/39

     四、其他使用技巧

    1.在进程监控命令行界面按下“1”,可监控每个逻辑CPU的状况

     2.高亮显示当前运行进程 -b

     3.进程字段排序

      默认是按照cpu占用率排序的,按下x可看到结果

     4.“shift + >”和“shift + <”

     向左或者向右移动改变排序的规则

    5.top交互命令

    h 显示帮助画面,给出一些简短的命令总结说明

    k 终止一个进程。

    i 忽略闲置和僵死进程。这是一个开关式命令。

    q 退出程序

    r 重新安排一个进程的优先级别

    S 切换到累计模式

    s 改变两次刷新之间的延迟时间(单位为s),如果有小数,就换算成m s。输入0值则系统将不断刷新,默认值是5 s

    f或者F 从当前显示中添加或者删除项目

    o或者O 改变显示项目的顺序

    l 切换显示平均负载和启动时间信息

    m 切换显示内存信息

    t 切换显示进程和CPU状态信息

    c 切换显示命令名称和完整命令行

    M 根据驻留内存大小进行排序

    P 根据CPU使用百分比大小进行排序

    T 根据时间/累计时间进行排序

    W 将当前设置写入~/.toprc文件中

  • 相关阅读:
    每天备份数据库中的表
    IE9相容問題-childNodes行為改變
    查找含有某字符的存儲過程
    弹出SQL报表的时候,出现空白的解决方法
    转:Page.ClientScript.RegisterStartupScript(me.GetType(),"script1","<script>alert('111');</script>")
    java核心技术记录之java术语
    Head First 设计模式笔记:单例模式
    多对一关系实体中,多的一方所关联的一实体的实例化问题
    ajax请求返回json数据弹出下载框的解决方法
    java核心技术记录
  • 原文地址:https://www.cnblogs.com/pegawayatstudying/p/12373310.html
Copyright © 2020-2023  润新知