用来列出系统中当前运行的那些进程
ps 为我们提供了进程的一次性的查看,它所提供的查看结果并不动态连续的;如果想对进程时间监控,应该用 top 工具。
kill 命令用于杀死进程
linux上的进程有5种状态:
- 运行(正在运行或者在运行队列中等待)
- 中断(休眠中,受阻,在等待某个条件的形成或接受到信号)
- 不可中断(收到信号不唤醒和不可运行,进程必须等待到有中断发生)
- 僵死(进程已终止,但进程描述符存在,直到父进程调用wait,系统调用后释放)
- 停止(进程收到sigstop, sigstp, sigtin, sigtou信号后运行停止)
ps工具标识进程的5种状态码:
- d 不可中断
- r 运行
- s 中断
- t 停止
- z 僵死
1.命令格式:
ps[参数]
2.命令功能
用来显示当前进程的动态
3.命令参数
a | 显示所有进程 |
---|---|
-a | 显示同一终端下的所有进程 |
-a | 显示所有进程 |
c | 显示进程的真实名称 |
-n | 反向选择 |
-e | 等于“-a” |
e | 显示环境变量 |
f | 显示程序之间的关系 |
-h | 显示树状结构 |
r | 显示当前终端的进程 |
t | 显示当前终端的所有程序 |
-au | 显示较详细的资讯 |
-aux | 显示所有包含其他使用者的行程 |
-c | 列出指定命令的状况 |
–line | 每页显示的行数 |
–width | 每页显示的字符数 |
–help | 显示帮助信息 |
–version | 显示版本信息 |
举个栗子吧。。。。
例子1:显示所有进程信息(ps -a)
例子2:显示指定用户信息(ps -u root)
例子3:显示所有进程的信息,连同命令行(ps -ef)
例子4:将目前属于你自己这次登陆的pid与相关信息列示出来(ps -l)
说明(上述图片中的各个参数含义):
f 代表这个程序的旗标
s 代表这个程序的状态(stat)
uid 程序被该uid所拥有
pid 就是这个程序的id
ppid则是其上级父进程的id
c 代表cpu使用的资源百分比
pri 这个是priority(优先执行序的缩写)
ni 这个是nice值
addr 这个是kernel function,指定该程序在内存的那个部分。如果是个running程序,一般是“-”
sz 使用掉的内存大小
例子5:ps与grep的常用组合用法,查找特定进程
ps -ef|grep ssh
例子6:列出目前所有的正在内存当中的程序
ps aux
说明:
user:该process属于哪个使用者的账号的
pid :该process的号码
%cpu:该process使用掉的cpu资源百分比
%men:该process所占用的物理内存百分比
vsz:该process使用掉的虚拟内存量
rss:该process占用的固定内存量
tty:该process是在哪个终端机上面运作,若与终端机无关,则显示?,另外,tty1-tty6是本机上面的登入者程序,若为pts/0等等的,则表示为网络连接进主机的程序
start:该process被触发启动的时间
time:该process实际使用cpu运作的时间
command:该process的实际指令