
top 命令提供运行系统的动态实时视图。它用于监控系统进程和资源使用情况,如 CPU、内存和交换使用情况。
top 命令的一般语法:
$ top [OPTIONS]
top
使用 top 命令显示正在运行的任务、内存、cpu 和 swap。要关闭窗口,请按 Q
示例:
在不带任何选项的终端中运行 top 命令,可能会得到以下结果。
top - 15:20:26 up 10 days, 2:30, 1 user, load average: 0.00, 0.01, 0.05 Tasks: 193 total, 1 running, 192 sleeping, 0 stopped, 0 zombie %Cpu(s): 0.7 us, 0.2 sy, 0.0 ni, 98.9 id, 0.1 wa, 0.0 hi, 0.1 si, 0.0 st KiB Mem : 8167848 total, 2003084 free, 1652232 used, 4512532 buff/cache KiB Swap: 2097148 total, 2097148 free, 0 used. 6171720 avail Mem PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 1219 root 20 0 658884 56644 35980 S 6.7 0.7 42:11.77 Xorg 2781 user1 20 0 883780 31576 21744 S 6.7 0.4 0:01.01 gnome-terminal- 1 root 20 0 225636 9484 6812 S 0.0 0.1 0:07.31 systemd 2 root 20 0 0 0 0 S 0.0 0.0 0:00.01 kthreadd 4 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kworker/0:0H 6 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 mm_percpu_wq 7 root 20 0 0 0 0 S 0.0 0.0 0:00.31 ksoftirqd/0 8 root 20 0 0 0 0 I 0.0 0.0 0:02.91 rcu_sched
之一行提供系统摘要:当前时间、正常运行时间、用户数量和平均负载。
第二行显示任务总数及其状态:运行、休眠、停止或僵尸。
第三行显示 CPU 使用详情:用户进程、系统进程、空闲进程等。
第四行和第五行显示内存使用情况:总内存、空闲内存、已用内存和缓冲/缓存内存。其余各行列出系统上运行的所有进程。每一行代表一个进程,详细内容包括 PID, USER, CPU usage, Memory usage, 以及启动该进程所使用的命令。
top -u [user]
使用 -u 选项可以显示特定用户的所有运行进程信息。
示例:
显示 root 用户的运行进程。
top - 12:34:56 up 10 days, 2:30, 2 users, load average: 0.00, 0.01, 0.05 Tasks: 100 total, 1 running, 99 sleeping, 0 stopped, 0 zombie %Cpu(s): 0.3 us, 0.1 sy, 0.0 ni, 99.5 id, 0.0 wa, 0.0 hi, 0.1 si, 0.0 st MiB Mem : 7976.1 total, 1694.7 free, 1263.5 used, 5017.8 buff/cache MiB Swap: 1024.0 total, 1024.0 free, 0.0 used. 6412.1 avail Mem PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 1 root 20 0 225492 9484 6812 S 0.0 0.1 0:06.37 systemd 2 root 20 0 0 0 0 S 0.0 0.0 0:00.01 kthreadd 3 root 20 0 0 0 0 S 0.0 0.0 0:00.36 ksoftirqd/0 5 root 0 -20 0 0 0 I 0.0 0.0 0:00.00 kworker/0:0H 7 root 20 0 0 0 0 I 0.0 0.0 0:01.31 rcu_sched ...
在这个例子中,你可以看到 top -u root 命令只显示 root 用户拥有的进程。输出包括每个进程的相关信息,如进程 ID (PID)、优先级 (PR)、友好值 (NI)、虚拟内存大小 (VIRT)、常驻内存大小 (RES)、共享内存大小 (SHR)、CPU 使用率 (%CPU)、内存使用率 (%MEM) 以及启动进程的命令 (COMMAND)。
top -b
top -b 命令用于以批处理模式运行 top。当你想将 top 的输出重定向到文件或其他命令时,这条命令特别有用。在批处理模式下,top 不接受输入,一直运行到设定的迭代次数限制,或直到被杀死。
示例:
在本例中,-n 1 会让 top 只运行一次,而不是持续更新。输出会被重定向到 top-output.txt 中。
打开 top-output.txt 文件,可能会看到类似下面的输出:
top - 18:25:01 up 10 days, 5:45, 1 user, load average: 0.00, 0.01, 0.05 Tasks: 162 total, 1 running, 161 sleeping, 0 stopped, 0 zombie %Cpu(s): 0.7 us, 0.3 sy, 0.0 ni, 98.9 id, 0.1 wa, 0.0 hi, 0.0 si, 0.0 st KiB Mem : 8167848 total, 1785084 free, 1583456 used, 4799308 buff/cache KiB Swap: 2097148 total, 2097148 free, 0 used. 6250480 avail Mem PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 1 root 20 0 225492 9484 6812 S 0.0 0.1 0:09.07 systemd 2 root 20 0 0 0 0 S 0.0 0.0 0:00.01 kthreadd 3 root 20 0 0 0 0 S 0.0 0.0 0:00.55 ksoftirqd/0 5 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 kworker/0:0H 7 root 20 0 0 0 0 S 0.0 0.0 0:07.28 rcu_sched
top -c
top -c 显示当前活动进程以及其他信息,包括启动每个进程所用的完整命令行。这有助于查看传递给进程的确切参数。
示例:
下面是 top -c 命令的输出示例:
top - 12:34:56 up 10 days, 2:03, 2 users, load average: 0.00, 0.01, 0.05 Tasks: 100 total, 1 running, 99 sleeping, 0 stopped, 0 zombie %Cpu(s): 0.3 us, 0.1 sy, 0.0 ni, 99.6 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st KiB Mem : 2040204 total, 987204 free, 105204 used, 948796 buff/cache KiB Swap: 1048572 total, 1048572 free, 0 used. 1830204 avail Mem PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND 1 root 20 0 159444 6604 3904 S 0.0 0.3 0:06.35 / *** in/init splash 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:00.85 [ksoftirqd/0] 5 root 0 -20 0 0 0 S 0.0 0.0 0:00.00 [kworker/0:0H] 7 root 20 0 0 0 0 S 0.0 0.0 0:03.78 [rcu_sched] 123 root 20 0 278532 37888 26976 S 0.0 1.9 0:03.45 /usr/bin/dockerd -H fd:// 456 www-data 20 0 161916 6412 2680 S 0.0 0.3 0:00.01 /usr/ *** in/apache2 -k start
前几行提供系统摘要,包括当前时间、系统运行时间、用户数量、平均负载和内存使用情况。
之后的每一行代表一个进程,并包含每个进程的各种信息。其中包括进程 ID (PID)、拥有该进程的用户、优先级 (PR) 和 nice 值 (NI)、内存使用情况 (VIRT、RES、SHR)、当前状态 (S)、CPU 使用率 (%CPU)、内存使用情况 (%MEM)、进程运行时间 (TIME+) 以及完整的命令行 (COMMAND)。
-c 选项显示启动每个进程的完整命令行。例如,对于 PID 1,命令是 / *** in/init splash。对于 PID 123,命令是 /usr/bin/dockerd -H fd://。这有助于查看传递给进程的确切参数。
top -s
-s 选项用于安全模式操作。在安全模式下,一些可能有害的交互式命令会被禁用。当系统管理员在需要限制用户操作的环境中运行 top 时,这个选项尤其有用。举例说明:
示例:
下面举例说明在这种情况下如何使用 -s 选项:
top -s 5
这条命令将启动 top 并每 0.5 秒刷新一次显示。
top -d [seconds]
-d 选项用于指定屏幕更新之间的延迟时间,换句话说就是刷新率。默认情况下,top 每 3.0 秒更新一次,但使用 -d 选项,可以将其设置为任何需要的间隔。
示例:
在 -d 选项后指定数字 20 ,每 20 秒更新一次输出。
top -d 20
top -n [number]
top -n 会更新 top 命令显示 n 次,然后退出。如果你想定期对系统进行快速快照,这将非常有用。
下面罗列了最常见的一些 Linux 命令,您可以根据自己的需要查阅对应命令的详细解析:
| 目录操作 | · · · · |
| 文件操作 | · · · · · · · · |
| 文件系统操作 | · · |
| *** | · · · · |
| 搜索和文本处理 | · · · · · · |
| 系统信息和管理 | · · · · · · |
| 用户和会话管理 | · · · |
此外,我们还整理 ,以帮助大家全面深入地学习 Linux。
Linux面板环境安装,主要支持LNMP和LAMP、Tomcat、node.js。不过对于大部分站长来说,主要是LNMP和LAMP两个环境的安装。 LNMP和LAMP两个环境的最大区别是,前者采用Nginx作为Web服务器,后者则采用Apache作为Web服务器。(选择哪个作为您的Web服务器,可...
宝塔的数据库管理,是基于phpmyadmin管理和新建数据库。其最大的便利性就是类似,通过面板可以快速访问进行管理操作,无需单独访问phpmyadmin的主页。 此外,在宝塔面板进行数据库管理,你也对数据库名、用户名及密码等信息一目了然,及可以对数据库执行快速备份或者导入。 添加数据...
宝塔面板的安全管理可以设置SSH开关、禁用PING、放行端口、屏蔽IP等相关的操作。 SSH的设置 SSH的关闭与启动,点击下图的开关,即可开启或关闭SSH远程连接。 SSH端口的修改,SSH远程连接的默认端口为22,修改端口前,请先查看该端口是否被占用。 PING命令的...
Laravel多年来一直是PHP应用程序开发的摇滚明星,这是有充分理由的。庞大的生态系统、活跃的社区、强大的就业市场、成功的初创公司——它拥有一切让采用新技术变得值得的东西。 如果你想学习Laravel,你不需要更进一步。通过浏览本指南,您可以找到最适合您的Laravel教程,与您的知识水平和...
PHP开发:有些人认为它是,另一些人认为它是一种过时的技术,不值得花时间学习。但是这些数字说明了什么,尤其是当您查看PHP开发人员的薪水时? 虽然肯定有许多更新、更炫、更令人兴奋的语言,但PHP仍然是后端Web开发的可靠主食,也是许多雇主仍在寻找的技能。 有兴趣自己成为PHP开发人员吗?我们...
您是否正在寻找成功的方法来加快Laravel的性能,同时在您的项目上工作?你来对地方了! Laravel是一个流行的开源PHP框架,以其强大的安全性和简单而复杂的编码架构而闻名。它是构建能够推动收入和推动业务发展的尖端Web应用程序的绝佳选择。 尽管如此,如果你不使用正确的优化技术,Lara...