例如要關閉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即可.