进程:是操作系统中正在运行的程序
ps命令:报告当前进程的快照
命令格式:ps [options]
options:
ps命令参数非常多,这里列出一些常用的
a ##显示当前环境的所有进程,与x组合显示所有进程
-A ##显示所有进程-a ##不显示与终端无关的进程和shell本身
x ##只显示所有拥有tty的进程,与a组合显示所有进程
u ##以面向用户的格式显示l ##以BSD长格式显示
e ##在COMMAND后显示调用的环境详细信息
f ##以ASCII格式显示进程之间的树形关系
例:[root@localhost ~]# ps aux ##以面向用户的格式显示所有进程信息
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
USER ##进程拥有者
PID ##进程号
%CPU ##占用的CPU使用率
%MEM ##占用的内存使用率
VSZ ##占用的虚拟内存大小
RSS ##占用的内存大小
TTY ##字符设备号码
STAT ##该进程的状态
D ##不可中断的睡眠(usually IO)
R ##运行中
S ##可中断的睡眠
T ##暂停状态
Z ##僵尸状态
< ##高优先级的进程
N ##低优先级的进程
L ##在内存中有锁定空间
s ##父进程
l ##多线程
+ ##前台进程
START ##进程开始时间
TIME ##进程执行时间
COMMAND ##所执行的命令
指定显示进程的某些信息可以使用:o,-o
对进程某一项进行排序可以使用:--sort
例:[root@localhost ~]# ps ao pid,comm,%cpu,%mem,user
PID COMMAND %CPU %MEM USER
1237 X 0.0 0.8 root
1585 bash 0.0 0.0 root
2011 bash 0.0 0.0 root
2402 vim 0.0 0.1 root
.....................................
%cpu ##显示进程CPU负载
%mem ##显示进程内存负载
user ##进程用户
group ##进程组
comm ##进程名称
pid ##进程id
stat ##进程状态
nice ##进程优先级
例: [root@localhost ~]# ps ao pid,comm,%cpu,%mem,user --sort -%mem
PID COMMAND %CPU %MEM USER
1237 X 0.0 0.8 root
2402 vim 0.0 0.1 root
2011 bash 0.0 0.0 root
1585 bash 0.0 0.0 root
.......................................
+ ##正序
- ##倒序
指定进程优先级:nice,renice
进程优先级的范围:-20~19
例:[root@localhost ~]# ps ao pid,comm,nice,stat ##显示当前环境进程,格式:进程id,进程名称,优先级,进程状态
PID COMMAND NI STAT
1237 X 0 Ssl+
1585 bash 0 Ss+
6652 bas
h 0 Ss
6909 ps 0 R+
[root@localhost ~]# nice -n 10 vim & ##运行vim,并且优先级为10,&表示把进程打入后台运行
[1] 6910 ##进程id为6910
[root@localhost ~]# ps ao pid,comm,nice,stat
PID COMMAND NI STAT
1237 X 0 Ssl+
1585 bash 0 Ss+
6652 bash 0 Ss
6910 vim 10 TN ##TN表示目前进程为暂停状态,优先级低
6911 ps 0 R+
[1]+ Stopped nice -n 10 vim
[root@localhost ~]# renice -n -15 6910 ##更改进程6910的优先级为-15
6910 (process ID) old priority 10, new priority -15 ##更改成功
.................................
jobs ##查看被打入后台的进程
ctrl+z ##把占用终端的进程打入后台
fg [jobsnum] ##把后台进程调回前台
bg [jobsnum] ##把后台暂停的进程运行
杀死进程
常用信号等级
1 ##重新加载进程配置
2 ##删除进程在内存中的数据
3 ##删除鼠标在内存中的数据
9 ##强行结束单个进程(不能被阻塞)
15 ##正常关闭进程 (可能会被阻塞)
18 ##运行暂停的进程
19 ##暂停某个进程 (不能被阻塞)
20 ##把进程打入后台 (可以被阻塞)
man 7 signal ##查看信号详细信息
kill -信号 进程id ##对某个进程执行相应操作
例:[root@localhost ~]# ps au
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1585 0.0 0.0 116180 2848 pts/0 Ss+ 18:29 0:00 -bash
root 6652 0.0 0.0 116180 2884 pts/1 Ss 21:15 0:00 -bash
root 6910 0.0 0.1 146608 4440 pts/1 T< 21:26 0:00 vim
root 7420 3.0 0.4 303408 20884 tty1 Ssl+ 21:48 0:00 /usr/bin/X :1
root 7575 4.0 0.0 151064 1808 pts/1 R+ 21:48 0:00 ps au
[root@localhost ~]# kill -9 6910
[1]+ Killed nice -n 10 vim
[root@localhost ~]# ps au
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1585 0.0 0.0 116180 2848 pts/0 Ss+ 18:29 0:00 -bash
root 6652 0.0 0.0 116180 2888 pts/1 Ss 21:15 0:00 -bash
root 7420 0.1 0.4 303408 20884 tty1 Ssl+ 21:48 0:00 /usr/bin/X :1
root 7617 0.0 0.0 151064 1808 pts/1 R+ 21:50 0:00 ps au
killall -信号 进程名称 ##对相同名称进程执行操作
例:[root@localhost ~]# ps au
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1585 0.0 0.0 116180 2848 pts/0 Ss+ 18:29 0:00 -bash
root 6652 0.0 0.0 116180 2888 pts/1 Ss 21:15 0:00 -bash
root 7420 0.1 0.4 303408 20884 tty1 Ssl+ 21:48 0:00 /usr/bin/X :1
root 7618 0.1 0.1 146608 4440 pts/1 T 21:50 0:00 vim
root 7619 0.4 0.1 146608 4440 pts/1 T 21:50 0:00 vim
root 7620 0.7 0.1 146608 4440 pts/1 T 21:50 0:00 vim
root 7621 0.5 0.1 146608 4440 pts/1 T 21:50 0:00 vim
root 7622 0.6 0.1 146608 4440 pts/1 T 21:50 0:00 vim
root 7623 0.0 0.0 151064 1808 pts/1 R+ 21:50 0:00 ps au
[5]+ Stopped vim
[root@localhost ~]# killall -9 vim
[1] Killed vim
[2] Killed vim
[3] Killed vim
[4]- Killed vim
[5]+ Killed vim
pkill -u USERNAME -信号 ##对用户拥有的进程执行操作
例:[root@localhost ~]# ps au
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1237 0.0 0.8 324724 38244 tty1 Ssl+ 18:24 0:01 /usr/bin/X :0
root 1585 0.0 0.0 116180 2848 pts/0 Ss+ 18:29 0:00 -bash
root 6652 0.0 0.0 116180 2884 pts/1 Ss 21:15 0:00 -bash
root 6910 0.0 0.1 146608 4440 pts/1 T< 21:26 0:00 vim
jinx 7307 0.0 0.0 116172 2904 pts/2 Ss+ 21:46 0:00 bash
jinx 7370 0.5 0.1 146608 4440 pts/2 T 21:47 0:00 vim
root 7385 0.0 0.0 151064 1808 pts/1 R+ 21:48 0:00 ps au
[root@localhost ~]# pkill -u jinx -9
[root@localhost ~]# ps au
USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND
root 1585 0.0 0.0 116180 2848 pts/0 Ss+ 18:29 0:00 -bash
root 6652 0.0 0.0 116180 2884 pts/1 Ss 21:15 0:00 -bash
root 6910 0.0 0.1 146608 4440 pts/1 T< 21:26 0:00 vim
root 7420 3.0 0.4 303408 20884 tty1 Ssl+ 21:48 0:00 /usr/bin/X :1
root 7575 4.0 0.0 151064 1808 pts/1 R+ 21:48 0:00 ps au
动态系统负载监控工具:top
ps命令是发起瞬间系统负载的快照,即静态信息
top命令是动态监控系统负载的工具,按h即可显示帮助