Shell 关闭指定进程

时间:2021-06-12 10:13:50

例如要关闭jupyter-notebook这个进程:

ps -ef | grep jupyter-notebook | grep -v grep | cut -c 9-15 | xargs kill -9

说明:管道符“|”用来隔开两个命令,管道符左边命令的输出会作为管道符右边命令的输入。 

  “ps -ef” 查看所有进程
  “grep -v grep” 是在列出的进程中去除含有关键字“grep”的进程。
  “cut -c 9-15” 是截取输入行的第9个字符到第15个字符,而这正好是进程号PID。
  “xargs kill -9” 中的xargs命令是用来把前面命令的输出结果(PID)作为“kill -9”命令的参数,并执行该命令。
  “kill -9”会强行杀掉指定进程,这样就成功清除了同名进程。

 

另外,对于java进程可以用jps(Java Virtual Machine Process Status Tool)命令查看,对应地,关闭进程的命令:

jps | grep 'Elasticsearch' | awk -F ' ' '{print $1}' | xargs kill -9

因为jps输出结果的形式是'进程号 进程名称',所以这里awk命令以空格切分,取第一个元素(即进程号),然后输入到xargs即可.

 

参考:

shell 杀死指定进程名称的进程方法

Shell 查找和关闭进程