linux中ps命令
linux中ps命令详细介绍
在 Linux 系统里,ps(process status)命令用于显示当前系统中进程的状态。它能帮你查看哪些进程正在运行、进程的 ID、占用的 CPU 和内存等信息。以下是ps命令的一些常用选项及其功能:
基本用法
直接使用ps命令,可显示当前终端中运行的进程的简略信息:
bash
输出示例:
plaintext
PID TTY TIME CMD23456 pts/0 00:00:00 bash
23457 pts/0 00:00:00 ps
这里,PID是进程的 ID,TTY是终端设备,TIME是进程占用的 CPU 时间,CMD是启动进程的命令。
常用选项
ps -a:显示所有用户的终端上运行的进程。ps -u:以用户为中心显示进程的详细信息,包含用户名、CPU 使用率、内存使用率等。
bash
输出示例:
plaintext
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMANDuser1 23456 0.0 0.1 12345 6789 pts/0 Ss 10:00 0:00 bash
user1 23457 0.0 0.0 12345 6789 pts/0 R+ 10:01 0:00 ps -u
其中,USER是运行进程的用户,%CPU是 CPU 使用率,%MEM是内存使用率。
3. ps -x:显示没有控制终端的进程,也就是后台进程。
4. ps -e:显示系统中所有进程,等同于ps -A。
5. ps -f:显示完整格式的进程信息,包含 UID、PPID(父进程 ID)、C(CPU 使用率)等。
bash
输出示例:
plaintext
UID PID PPID C STIME TTY TIME CMDroot 1 0 0 09:00 ? 00:00:01 /sbin/init
user1 23456 23455 0 10:00 pts/0 00:00:00 bash
ps -l:显示长格式的进程信息。
bash
输出示例:
plaintext
F S UID PID PPID C PRI NI ADDR SZ WCHAN TTY TIME CMD0 S 1000 23456 23455 0 80 0 - 1234 wait pts/0 00:00:00 bash
这里,F是进程标志,S是进程状态,PRI是优先级,NI是 nice 值。
组合使用示例
如果你想查看所有用户的所有进程的详细信息,可以使用如下命令:
bash
要是想查看某个特定用户(如user1)的所有进程,可以使用:
bash
user1
若要查找某个特定命令(如nginx)相关的进程,可结合grep命令:
bash
nginx
912 | nginx
这个命令会显示所有与nginx相关的进程信息。