携手创作,共同成长!这是我参与「掘金日新计划 · 8 月更文挑战」的第24天,点击查看活动详
ps命令
命令后面加上&
可以将进程置于后台运行 ,比如vim a.txt &
ps aux # 查看所有进程信息
- USER 进程属于哪个用户
- PID 进程号
- %CPU 占用的CPU
- %MEM 占用的内存空间
- VSZ 申请的内存空间
- RSS 实际占用的内存空间
- STAT 进程状态
R:运行状态
S:可中断睡眠状态,大多数进程所处状态,在睡眠过程中可以接受信号唤醒进程,执行的IO操作可以得到硬件响应
D:不可中断睡眠状态,睡眠过程中不可以接受信号唤醒进程,执行的IO操作得不到硬件响应,此时硬盘压力过大,属于杀不死的进程
T:停止的进程
Z:僵尸进程,不能被杀死的进程
x:死掉的进程,几乎看不见这种状态
<:代表优先级较高的进程
N:代表优先级较低的进程
s:表示包含子进程
+:表示是前台的进程
l:表示进程内开启了多线程
|:管道符表示多进程
- COMMAND 进程文件
ps -elf # 可以查看进程的父进程号ppid
pstree pid号 # 可以查看进程的进程树
pstree # 也可以单独使用
top命令
top命令可以实时查看进程信息,按a
退出监控界面
top -p pid号
:查看某一个进程。
在top监控界面可以执行的命令:
s:调整刷新频率
M:按照内存从大到小排序
R:倒序排列,从小到大
P:按照CPU使用率排序,从大到小
N:按照PID排序
shift+< or >:左右切换字段排序
f:选择top命令显示字段,空格键选择,上下键控制方向,q保存退出
z:彩色查看,再按一次取消颜色显示
k:给进城发信号
管道符和进程命令结合使用
ps aux | grep python
ps elf | grep python
kill - 给进程发送信号
[root@VM-4-2-centos ~]# kill -l # 列出所有支持的信号,数字对应信号
1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL 5) SIGTRAP
6) SIGABRT 7) SIGBUS 8) SIGFPE 9) SIGKILL 10) SIGUSR1
11) SIGSEGV 12) SIGUSR2 13) SIGPIPE 14) SIGALRM 15) SIGTERM
16) SIGSTKFLT 17) SIGCHLD 18) SIGCONT 19) SIGSTOP 20) SIGTSTP
21) SIGTTIN 22) SIGTTOU 23) SIGURG 24) SIGXCPU 25) SIGXFSZ
26) SIGVTALRM 27) SIGPROF 28) SIGWINCH 29) SIGIO 30) SIGPWR
31) SIGSYS 34) SIGRTMIN 35) SIGRTMIN+1 36) SIGRTMIN+2 37) SIGRTMIN+3
38) SIGRTMIN+4 39) SIGRTMIN+5 40) SIGRTMIN+6 41) SIGRTMIN+7 42) SIGRTMIN+8
43) SIGRTMIN+9 44) SIGRTMIN+10 45) SIGRTMIN+11 46) SIGRTMIN+12 47) SIGRTMIN+13
48) SIGRTMIN+14 49) SIGRTMIN+15 50) SIGRTMAX-14 51) SIGRTMAX-13 52) SIGRTMAX-12
53) SIGRTMAX-11 54) SIGRTMAX-10 55) SIGRTMAX-9 56) SIGRTMAX-8 57) SIGRTMAX-7
58) SIGRTMAX-6 59) SIGRTMAX-5 60) SIGRTMAX-4 61) SIGRTMAX-3 62) SIGRTMAX-2
63) SIGRTMAX-1 64) SIGRTMAX
上述这么多信号只需要记住三个1 9 15
-
- SIGHUP:可以让进程重新加载配置,
kill -1 进程号
- SIGHUP:可以让进程重新加载配置,
-
- SIGKILL:强制杀死进程,
kill -9 进程号
- SIGKILL:强制杀死进程,
-
- SIGTERM:kill默认发送的就是该信号,即终止进程,
kill pid号
等价于kill -15 pid号
,如果kill -15
不能终止进程,可以使用kill -9
- SIGTERM:kill默认发送的就是该信号,即终止进程,
kill pid号
:精确的杀死一个进程
kill -9 进程名称
:指定进程名字关闭进程,可能会关闭多个