linux中的进程管理(ps和kill命令)

ps

通过ps命令可以查看linux系统的进程信息

语法:ps[-e -f]

选项-e,显示出全部的进程

选项-f,以完全格式化的形式展现信息(展示全部信息)

一般来说,固定用法就是:ps -ef列出全部进程的全部信息

[root@localhost ~]# ps -ef
UID         PID   PPID  C STIME TTY          TIME CMD
root          1      0  1 12:59 ?        00:00:03 /usr/lib/systemd/systemd --switched-root --system --deserialize 22
root          2      0  0 12:59 ?        00:00:00 [kthreadd]
root          3      2  0 12:59 ?        00:00:00 [ksoftirqd/0]
root          4      2  0 12:59 ?        00:00:00 [kworker/0:0]
root          5      2  0 12:59 ?        00:00:00 [kworker/0:0H]
root          6      2  0 12:59 ?        00:00:00 [kworker/u256:0]
root          7      2  0 12:59 ?        00:00:00 [migration/0]
root          8      2  0 12:59 ?        00:00:00 [rcu_bh]
root          9      2  1 12:59 ?        00:00:04 [rcu_sched]
root         10      2  0 12:59 ?        00:00:00 [lru-add-drain]
root         11      2  0 12:59 ?        00:00:00 [watchdog/0]
从左到右
UID:进程所属的用户ID
PID:程序的进程号(唯一的标记)
PPID:进程的父ID(启动此进程的其他进程)
C:此进程的CPU占用率(百分比)
STIME:进程的启动时间
TTY:此进程的终端代号,如显示?,表示非终端启动
TIME:进程占用CPU的时间
CMD:进程对应的名称或启动路径或启动命令

但是我们发现每次使用ps命令会出现很多,所以我们会配合管道符“|”去筛选过滤
如:当我们使用tail命令时会卡住
此时再开一个终端窗口并使用ps -ef | grep tail命令后便会出现
[root@localhost ~]# ps -ef | grep tail
root       5807   4297  0 13:20 pts/0    00:00:00 tail
root       5850   5810  0 13:20 pts/1    00:00:00 grep --color=auto tail
而且ps+管道符不仅可以通过文件的路径或命令查找,还可以通过进程的启动时间、进程号、UID等来查看进程
如
[root@localhost ~]# ps -ef | grep "13:20"
root       5807   4297  0 13:20 pts/0    00:00:00 tail
root       5810   4290  0 13:20 pts/1    00:00:00 bash
root      55818   5810  0 13:25 pts/1    00:00:00 grep --color=auto 13:20
[root@localhost ~]# ps -ef | grep 97833
root      55923   5810  0 13:30 pts/1    00:00:00 grep --color=auto 97833
[root@localhost ~]# ps -ef | grep "root"
root          1      0  0 13:03 ?        00:00:03 /usr/lib/systemd/systemd --switched-root --system --deserialize 22
root          2      0  0 13:03 ?        00:00:00 [kthreadd]
root          3      2  0 13:03 ?        00:00:00 [ksoftirqd/0]
root          5      2  0 13:03 ?        00:00:00 [kworker/0:0H]
root          7      2  0 13:03 ?        00:00:00 [migration/0]
root          8      2  0 13:03 ?        00:00:00 [rcu_bh]
root          9      2  0 13:03 ?        00:00:11 [rcu_sched]
root         10      2  0 13:03 ?        00:00:00 [lru-add-drain]
root         11      2  0 13:03 ?        00:00:00 [watchdog/0]
root         12      2  0 13:03 ?        00:00:00 [watchdog/1]
root         13      2  0 13:03 ?        00:00:00 [migration/1]
root         14      2  0 13:03 ?        00:00:00 [ksoftirqd/1]
root         16      2  0 13:03 ?        00:00:00 [kworker/1:0H]
root         17      2  0 13:03 ?        00:00:00 [watchdog/2]

kill

在WINDOWS系统中,可以通过任务管理器选择进程后,点击结束进程从而关闭它,而在linux我们通过kill命令关闭进程

语法:kill[-9] 进程ID

选项 -9:表示强制关闭进程。不使用此选项会向进程发送信号要求其关闭,但是否关闭看进程自身的处理机制。

还是拿tail举例
[root@localhost ~]# tail
​
此时使用tail命令后终端卡住了,我们需要关闭tail这个进程
先使用ps命令查看
[root@localhost ~]# ps -ef |grep tail
root       5807   4297  0 13:20 pts/0    00:00:00 tail
root      56001   5810  0 13:37 pts/1    00:00:00 grep --color=auto tail
然后我们使用kill命令将其关闭
[root@localhost ~]# kill -9 5807
在另一个终端窗口内可以看见tail进程已经被关闭
[root@localhost ~]# tail
[1]+  已杀死               tail
已杀死
  • 24
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值