Linux ps (英文全拼:process status)命令用于显示当前进程的状态,类似于 windows 的任务管理器。
语法
ps [options] [--help]
常用参数
- -e 显示所有进程。
- -f 全格式。
- -h 不显示标题。
- -l 长格式。
- r 只显示正在运行的进程。
- u 以用户为主的格式来显示程序状况。
- x 显示所有程序,不以终端机来区分。
- -A 列出所有的进程
- -w 显示加宽可以显示较多的资讯
- -au 显示较详细的资讯
- -aux 显示所有包含其他使用者的行程
-
au(x) 输出格式 :
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
结果字段
- USER: 行程拥有者
- PID: pid process id
- PPID 父进程ID
- C CPU占用率
- STIME 开始时间
- TTY 开始此进程的TTY----终端设备
- TIME 此进程运行的总时间
- CMD 命令名
- %CPU: 占用的 CPU 使用率
- %MEM: 占用的记忆体使用率
- VSZ: 占用的虚拟记忆体大小
- RSS: 占用的记忆体大小
- TTY: 终端的次要装置号码 (minor device number of tty)
-
STAT: 该行程的状态:
- D: 无法中断的休眠状态 (通常 IO 的进程)
- R: 正在执行中
- S: 静止状态
- T: 暂停执行
- Z: 不存在但暂时无法消除
- W: 没有足够的记忆体分页可分配
- <: 高优先序的行程
- N: 低优先序的行程
- L: 有记忆体分页分配并锁在记忆体内 (实时系统或捱A I/O)
- COMMAND:所执行的指令
常用命令
例如:
ps -ef
结果输出如下
UID PID PPID C STIME TTY TIME CMD
root 1 0 0 2021 ? 00:00:01 /sbin/init
root 2 0 0 2021 ? 00:00:00 [kthreadd]
root 3 2 0 2021 ? 00:00:13 [migration/0]
root 4 2 0 2021 ? 00:00:53 [ksoftirqd/0]
root 5 2 0 2021 ? 00:00:00 [migration/0]
root 6 2 0 2021 ? 00:00:30 [watchdog/0]
root 7 2 0 2021 ? 00:00:02 [migration/1]
root 8 2 0 2021 ? 00:00:00 [migration/1]
root 9 2 0 2021 ? 00:00:55 [ksoftirqd/1]
root 10 2 0 2021 ? 00:00:27 [watchdog/1]
......
ps -ef | grep 进程关键字
[root@controller1 home]# ps -ef | grep mysql
root 2223 1 0 2021 ? 00:00:00 /bin/sh /usr/bin/mysqld_safe --datadir=/home/mysql --pid-file=/home/mysql/controller.pid
mysql 2375 2223 4 2021 ? 6-20:09:58 /usr/sbin/mysqld --basedir=/usr --datadir=/home/mysql --plugin-dir=/usr/lib64/mysql/plugin --user=mysql --log-error=/home/mysql/localhost.localdomain.err --pid-file=/home/mysql/controller.pid --port=3306
.......