一、什么是ps命令
ps是Process Status的缩写,作用是用于查看当前进程的状态。
在Linux和Unix操作系统中,所有的程序和进程都是以进程的方式运行的。
ps命令可以帮助用户查看哪些进程正在运行,以及它们的状态和资源消耗等信息。
ps -ef # 显示所有进程的详细信息
ps -e # 显示所有进程的简单信息
ps -a # 显示所有终端的终端名和进程
ps -fA # 显示所有用户的进程详细信息
ps -lf # 长格式显示所有进程的信息
ps -aux # 列出所有进程
二、ps命令常用参数解析
1. 显示特定用户的进程
使用ps命令可以查看Linux系统上运行的所有进程。如果只想查看特定用户的进程,可以使用-u选项。
ps -u [用户名]
例如,如果想要查看用户"tom"在运行的进程,可以使用以下命令:
ps -u tom
2. 显示所有进程的详细信息
使用ps命令可以查看Linux系统上运行的所有进程。如果想要查看所有进程的详细信息,可以使用-e选项。
ps -ef
以上命令可以列出所有进程的详细信息,包括进程ID(PID)、终端(tty)、状态(S)、CPU占用率(%CPU)、内存占用率(%MEM)、启动时间(STIME)、命令(COMMAND)等信息。
3. 显示所有终端的终端名和进程
使用ps命令可以查看Linux系统上运行的所有进程。如果想要查看所有终端的终端名和进程,可以使用-a选项。
ps -a
以上命令可以列出所有终端的终端名和进程。
4. 显示所有用户的进程详细信息
使用ps命令可以查看Linux系统上运行的所有进程。如果想要查看所有用户的进程详细信息,可以使用-fA选项。
ps -fA
以上命令可以列出所有用户的进程详细信息,包括用户名(UID)、进程ID(PID)、父进程ID(PPID)、CPU占用率(%CPU)、内存占用率(%MEM)、启动时间(STIME)、命令(COMMAND)等信息。
5. 长格式显示所有进程的信息
使用ps命令可以查看Linux系统上运行的所有进程。如果想要以长格式显示所有进程的信息,可以使用-lf选项。
ps -lf
以上命令可以以长格式显示所有进程的信息,包括用户(USER)、进程ID(PID)、父进程ID(PPID)、CPU占用率(%CPU)、内存占用率(%MEM)、启动时间(STIME)、命令参数(CMD)等信息。
6. 列出所有进程
使用ps命令可以查看Linux系统上运行的所有进程。如果想要列出所有进程,可以使用-aux选项。
ps -aux
以上命令可以列出所有进程的详细信息,包括PID、CPU占用率、内存占用率、进程状态等信息。
三、ps命令常用实例
1. 查找特定进程
如果想要查找特定进程,可以使用ps命令结合grep命令。
ps -ef | grep [进程名]
2. 实时查看进程的CPU和内存占用情况
如果想要实时查看进程的CPU和内存占用情况,可以使用top命令。
top -p [进程ID]
以上命令可以实时查看指定进程的CPU和内存占用情况。
3. 查看进程的线程数
如果想要查看进程的线程数,可以使用ps命令查看进程的状态,并使用grep命令查找Threads字段。
ps -ef | grep [进程名] | awk '{print $2}' | xargs -I {} cat /proc/{}/status | grep Threads
以上命令可以查看指定进程的线程数。
4. 查看某个进程的所有子进程
如果想要查看某个进程的所有子进程,可以使用pstree命令。
pstree [进程ID]
以上命令可以查看指定进程的所有子进程。
5. 查看系统核心线程的状态
如果想要查看系统核心线程的状态,可以使用ps命令查看所有进程状态,并使用grep命令过滤出系统核心线程。
ps -ef | grep '[kthreadd]' | awk '{print $1 "\t" $2 "\t" $3 "\t" $8 "\t" $9}'
以上命令可以查看系统核心线程的状态,包括用户ID、进程ID、父进程ID、状态、命令等信息。