Ubuntu 16.04
我习惯于使用这个命令行来杀死任何进程匹配说 COMMAND
for i in $(ps -ef | grep COMMAND | awk '{ print $2 }'); do kill -9 "$i" &>/dev/null;done
shellcheck 不太喜欢它并建议
root@singa /home # shellcheck run
In run line 4:
for i in $(ps -ef | grep COMMAND | awk '{ print $2 }'); do kill -9 "$i" &>/dev/null;done
^-- SC2009: Consider using pgrep instead of grepping ps output.
在这里完成此操作需要哪些标志来替换 XXX
for i in $(pgrep XXX | grep COMMAND | awk '{ print $2 }'); do kill -9 "$i" &>/dev/null;done
我已经检查了 pgrep 的手册页。
或者,更好的是:
作为旁注,
kill -9
众所周知,无私使用有时会导致僵尸爆发、孤立文件、永久临时文件和其他疾病。请改为考虑仅使用kill
which 默认发送SIGTERM
而不是SIGKILL
.我已经完成了以下方法
这里pickup,hald-runner是进程名