《LINUX教程:Linux下kill杀死进程详解》要点:
本文介绍了LINUX教程:Linux下kill杀死进程详解,希望对您有用。如果有疑问,可以联系我们。
配景:这个Linux下kill命令总是记不住,在此稍作记录,方便查看!
Linux kill 敕令详解
此时如果我想杀了火狐的过程就在终端输入:
$ kill -s 9 1827
此中-s 9 制定了传递给进程的信号是9,即强制、尽快终止进程.各个终止信号及其作用见附录.
简单吧,但有个问题,进程少了则无所谓,进程多了,就会觉得痛苦了,无论是ps -ef 还是ps -aux,每次都要在一年夜串进程信息里面查找到要杀的进程,看的眼都花了.
进阶篇:
改良1:
把ps的查询结果通过管道给grep查找包括特定字符串的进程.管道符“|”用来隔开两个命令,管道符左边命令的输出会作为管道符右边命令的输入.
$ ps -ef | grep firefox
smx 1827 1 4 11:38 ? 00:27:33 /usr/lib/firefox-3.6.18/firefox-bin
smx 12029 1824 0 21:54 pts/0 00:00:00 grep --color=auto firefox
这次就清爽了.然后便是
$kill -s 9 1827
照样嫌打字多?
使用pgrep:
一看到pgrep首先会想到什么?没错,grep!pgrep的p注解了这个命令是专门用于进程查询的grep.
ps:然则如果有其他的进程时候,还是无法唯一确定,不是很靠谱.
改良:
$ps -ef | grep firefox | grep -v grep | cut -c 9-15 | xargs kill -s 9
阐明:
“grep firefox”的输出成果是,所有含有关键字“firefox”的进程.
“grep -v grep”是在列出的进程中去除含有症结字“grep”的进程.
“cut -c 9-15”是截取输入行的第9个字符到第15个字符,而这正好是过程号PID.
“xargs kill -s 9”中的xargs命令是用来把前面命令的输出成果(PID)作为“kill -s 9”命令的参数,并执行该命令.“kill -s 9”会强行杀掉指定进程.
我觉得这个还是比拟靠谱的,如果一次grep定位不到,可以多次grep.比如
改良:
$ ps -ef | grep firefox | awk '{print $2}' | xargs kill -9
kill: No such process
有一个比拟郁闷的地方,进程已经正确找到并且终止了,但是执行完却提示找不到进程.
其中awk '{print $2}' 的作用便是打印(print)出第二列的内容.根据常规篇,可以知道ps输出的第二列正好是PID.就把进程相应的PID通过xargs传递给kill作参数,杀掉对应的进程.
Linux脚本开头#!/bin/bash和#!/bin/sh是什么意思以及区别
#!/bin/sh是指此脚本使用/bin/sh来解释执行,#!是特殊的表现符,其后面根的是此解释此脚本的shell的路径.
其实第一句的#!是对脚本的解释器法式路径,脚本的内容是由解释器解释的,我们可以用各种各样的解释器来写对应的脚本.
好比说/bin/csh脚本,/bin/perl脚本,/bin/awk脚本,/bin/sed脚本,甚至/bin/echo等等.
#!/bin/bash同理.
#!/bin/bash ps -ef |grep memcached | grep local | awk '{print $2}'|xargs kill -9
本文永远更新链接地址:
维易PHP培训学院每天发布《LINUX教程:Linux下kill杀死进程详解》等实战技能,PHP、MYSQL、LINUX、APP、JS,CSS全面培养人才。
转载请注明本页网址:
http://www.vephp.com/jiaocheng/9819.html