linux查看系统进程的命令,linux常用命令 查看进程
linux中的ps命令是Process Status的缩写。ps命令可以列出系统中当前正在运行的进程,列出的进程是执行ps命令时正在运行的进程。如果您想要动态显示进程信息,您需要使用top命令。
通过ps命令,可以确定哪些进程正在运行和正在运行,进程是否结束,进程是否死亡,哪些进程占用资源过多等。
要终止一个进程,使用kill命令,例如:kill 12345 (12345是进程的pid)
linux进程有5种状态
1.正在运行(正在运行或在运行队列中等待)
2.中断(休眠、阻塞、等待条件形成或接收信号)
3.不可中断(进程必须等待,直到中断发生,因为它在收到信号后不会醒来,也不能运行)
4.Dead(进程已经被终止,但是进程描述符一直存在,直到它在父进程调用wait4()系统调用后被释放)
5.Stop(进程在收到sigstop、sigstp、sigtin和sigtou信号后停止运行)
ps 5种进程状态的标识码如下:
R run runnable(在运行队列中)
打扰睡眠
不间断睡眠(通常是IO)
一个死的(“僵尸”)进程
不要停止追踪或停止。
命令参数
显示所有进程
-在同一终端下显示所有程序。
-A显示所有进程
c显示了进程的真实名称。
-N反向选择
-e等于"-A "
e显示环境变量
显示程序之间的关系。
-H显示树形结构
r显示当前终端的进程。
t显示当前终端的所有节目。
u指定用户的所有进程
-au显示更详细的信息。
-aux显示其他用户的所有进程。
-C命令列出指定命令的状态。
行数每页显示的行数
宽度字符数每页显示的字符数
help显示帮助信息。
版本显示版本显示
输出列的含义
f代表这个流程的标志,4代表用户是超级用户。
s代表这个程序的状态(STAT),本文将介绍每个STAT的含义。
UID程序归UID所有。
PID过程的ID
而PPID是其上级父程序的ID。
c CPU使用的资源百分比
PRI是Priority的缩写,后面会详细介绍。
这就是Nice值,我们将在下一节继续介绍它。
ADDR这是内核函数,表示程序在内存中的位置。如果是正在运行的程序,一般是“-”
SZ使用的内存大小
WCHAN,这个程序目前在运行吗?如果-,说明它在运行中。
TTY登录的终端位置
使用的CPU时间。
CMD发出的命令
例子:
1.显示所有进程信息
fdipzone@ubuntu:~$ ps -A PID TTY时间CMD 1?00:00:01初始化2?00:00:00 kthread 3?00:00:00 ksoftirqd/0 4?00:00:00工作人员/0:0 5?00:00:00 kworker/u:0 6?00:00:00迁移/0 7?00:00:00迁移/1 8?00:00:00工作人员/1:0 9?00:00:00 ksoftirqd/1 10?00:00:00工作者/0:1.省略一些结果
2.显示指定用户进程
fdipzone @ Ubuntu:~ $ PS-u fdipzone PID TTY时间CMD 1502?00:00:00 gnome-keyring-d 1521?00:00:00 gnome-会话1551?00:00:00 ibus-daemon 1555?00:00:00 ssh-agent 1558?00:00:00 dbus-启动1559?00:00:00 ibus-gconf 1561?00:00:00 python 1563?00:00:00 dbus-daemon 1564?00:00:00 ibus-x11 1569?00:00:00 gconfd-2.省略一些结果
3.显示所有进程,并显示命令行
fdipzone @ Ubuntu:~ $ PS-ef uid PID PPID C STIME TTY时间CMDroot 1 0 0 22:53?00:00:01 /sbin/initroot 2 0 0 22:53?00:00:00[kthread]root 3 2 0 22:53?00:00:00[ksoftirqd/0]root 4 2 0 22:53?00:00:00[kworker/0:0]root 5 2 0 22:53?00:00:00[kworker/u:0]root 6 2 0 22:53?00:00:00[migration/0]root 7 2 0 22:53?00:00:00[migration/1]root 8 2 0 22:53?00:00:00[kworker/1:0]root 9 2 0 22:53?00:00:00[ksoftirqd/1]root 10 2 0 22:53?00:00:00[工作人员/0:1].省略部分结果
4.与grep命令组合使用,查找指定的进程
fdipzone @ Ubuntu:~ $ PS-ef grep Apache root 2032 1 0 22:56?00:00:01/usr/sbin/Apache 2-k start www-data 2318 2032 0 22:58?00:00:00/usr/sbin/Apache 2-k start www-data 2319 2032 0 22:58?00:00:00/usr/sbin/Apache 2-k start www-data 2320 2032 0 22:58?00:00:00/usr/sbin/Apache 2-k start www-data 2321 2032 0 22:58?00:00:00/usr/sbin/Apache 2-k start www-data 2322 2032 0 22:58?00:00:00/usr/sbin/Apache 2-k start www-data 2323 2032 0 22:58?00:00:00/usr/sbin/Apache 2-k开始.省略部分结果
5.显示当前登入用户的bash相关的进程
fdipzone @ Ubuntu:~ $ PS-lF S UID PID PPID C PRI NI ADDR SZ WCHAN TTY时间cmd 0S 1000 1805 1798 0 80 0-7011 wait pts/0 00:00:00:00 bash 0 R 1000 2561 1805 0 80-3377-pts/0 00:00:00 PS
6.列出所有用户启动的进程
fdipzone @ Ubuntu:~ $ PS aux用户PID % CPU % MEM VSZ RSS TTY统计开始时间COMMANDroot 1 0.1 0.2 24136 2188?ss 22:53 0:01/sbin/init root 2 0.0 0.0 0 0?s 22:53 0:00[kthread]root 3 0.0 0.0 0 0?s 22:53 0:00[ksoftirqd/0]root 5 0.0 0.0 0 0?s 22:53 0:00[kworker/u:0]root 6 0.0 0.0 0 0?s 22:53 0:00[migration/0]root 7 0.0 0.0 0 0?s 22:53 0:00[migration/1]root 8 0.0 0.0 0 0?s 22:53 0:00[kworker/1:0]root 9 0.0 0.0 0 0?s 22:53 0:00[ksoftirqd/1]root 10 0.0 0.0 0 0?s 22:53 0:00[kworker/0:1]root 11 0.0 0.0 0 0?s 22:53 0:00[cpuset]root 12 0.0 0.0 0 0?第22小时53分0秒.省略部分结果
答:显示其他用户启动的进程
x:查看系统中属于自己的进程
u:启动这个进程的用户和启动时间