多个nohup.out运行命令_Linux 下的 Pkill 命令

e1777fec549f5222f643f702e6a7fa7e.png

本文最先发布在:

Linux 下的 Pkill 命令​www.itcoder.tech

本文讲述 Linux 命令 pkill 的基础用法。

pkill是一个命令行工具,它根据现有标准,给正在运行的程序进程发送信号。进程可以通过他们的完整名字,部分名字,用户进程或者其他属性指定。

这个pkill命令是procps(或者procps-ng)软件包中的一部分。该软件包被预装在几乎所有的 Linux 发行版上。 pkill是一个基于打印匹配进程列表的pgrep程序的封装。

一、如何使用 pkill 命令

pkill命令的语法如下:

pkill [OPTIONS] <PATTERN>

匹配的<PATTERN>被指定使用扩展正则表达式。

当不使用任何选项时,pkill发送15TERM)信号给匹配名字的所有运行程序的 PIDS。例如,想要完美停止所有 firefox 进程,你需要运行:

pkill -9 firefox

当最少有一个正在运行的进程匹配给出的名字时,这个命令返回0,否则,返回退出代码1。在 shell 脚本中,返回值很有用。

想要发送不同的信号给匹配进程,运行pkill命令加上--signal选项,再加上进程号或者进程名。另一种发送信号的方式就是,运行pkill 加上使用-作为前缀的信号名字或者信号序号。

使用kill -l命令列出所有可用的信号。

最常被使用的信号是:

  • 1(HUP):重新加载进程
  • 9 (KILL): 杀死进程
  • 15(TERM):完美地停止一个进程

信号可以通过三种不同的方式来指定:

  • 使用一个信号序号(例如: -1)
  • 使用 “SIG” 前缀 (例如: -SIGHUP)
  • 不使用 “SIG” 前缀 (例如: -HUP)

例如,想要重新加载 Nginx 进程,你需要运行:

pkill -HUP nginx

pkill使用正则表达式来匹配进程名称。这是一个好办法,在发送信号之前,先使用pgrep命令来打印匹配进程。 例如,列出所有名称中包含ssh的进程:

1039 sshd
2257 ssh-agent
6850 ssh
31279 ssh-agent

如果你想依照名字准确匹配进程,并发送信号给它:

pkill '^ssh$'
符号^代表字符串开头,字符串$代表字符串结尾

默认情况下,pkill仅仅匹配进程名称。如果使用-f选项,这个命令将会匹配所有参数列表。如果命令中包含空格,将整个命令用引号括起来:

pkill -9 -f "ping 8.8.8.8"

使用-u选项告诉pkill仅仅匹配给出用户所运行的进程。

pkill -u mark

想要指定多个用户,在多个用户名之间添加逗号:

pkill -u mark,danny

你可以混合使用选项和搜索样式。例如,发送KILL信号给所有由"mark"用户运行的,并且进程名包含"gnome"的所有进程,你需要输入:

pkill -9 -u mark gnome

想要显示最老的或者最新的进程,使用-n或者-o选项。

例如,想要杀死最近启动的 screen:

pkill -9 -n screen

二、总结

pkill命令被用来发送信号给正在运行的程序。

如果你有任何疑问,请通过以下方式联系我们:

微信: sn0wdr1am86

5ce9c31cf25d08b1e33b8f2563db5ea6.png

微信群: 加上面的微信,备注微信群

QQ: 3217680847

0f07ac16fba37ec2d109f043c54babdd.png

QQ 群: 82695646

598a8c9b0efca1114a9e2b4e97f7a8bc.png

b308cbb5d7f7b5f7b11caf08d27141f3.png
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值