shell查找进程并终止

 

创建kill.sh文件,内容如下:

 

port=9200
#一、根据端口号查询对应的pid,两种都行
pid=$(netstat -nlp | grep :$port | awk '{print $7}' | awk -F"/" '{ print $1 }');
#pid=$(ps -ef | grep 你的进程或端口 | grep -v grep | awk '{print $2}')

#二、杀掉对应的进程,如果pid不存在,则不执行
if [ -n "$pid" ]; then
  kill -9 $pid;
fi

 

 

    这个脚本其实就2步,先获取进程id,然后 kill 掉这个进程。
(1)获取进程id的方法
    这个可以用 awk命令来获取
ps -ef | grep 你的进程 | grep -v grep | awk '{print $2}'
        这里要把这个grep这个用 -v 来过滤掉,然后用awk命令,提取第2个参数就是进程id了
(2)杀进程方法
     这个就直接kill -9 进程id 就ok了
kill -9 你的进程id

 

posted @ 2019-01-17 14:19  秋寻草  阅读(11106)  评论(0编辑  收藏  举报