本文介绍了Linux pkill命令的基础,同时也附上pkill命令的实际使用示例。
简介 pkill是一个命令行实用程序,可以根据给定的标准将信号发送到正在运行的程序的进程,可以通过进程的全名或部分名,运行进程的用户或其他属性来指定进程。 pkill命令是procps(或procps-ng)软件包的一部分,该软件包已预先安装在几乎所有Linux发行版中。pkill是pgrep程序的包装程序,它仅打印匹配进程的列表。 参考:杀掉Linux中进程的使用示例:使用ps,kill,killall,pkill,top命令。
如何使用pkill命令,包含实例 pkill命令的语法如下: pkill [OPTIONS] <PATTERN> 使用扩展的正则表达式指定匹配的<PATTERN>。 如果不带任何选项调用pkill,则将15 (TERM)信号发送到与给定名称匹配的所有正在运行的程序的PID。例如,要正常停止所有firefox进程,可以运行: pkill -9 firefox 当至少一个正在运行的进程与请求的名称匹配时,该命令返回0,否则,退出代码为1,在shell脚本中使用时,这很有用。 要将不同的信号发送到匹配的进程,请使用带有--signal选项的pkill命令,后跟数字或符号信号名称,发送信号的另一种方法是运行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命令用于根据不同的标准向正在运行的程序发送信号。 有关pkill命令的更多帮助信息,请访问pkill手册页,可查看以下截图:
或在Linux系统终端中输入man pkill命令查看。
相关主题 |