在 bash 脚本中,我想执行以下操作(在伪代码中):
if [ a process exists with $PID ]; then kill $PID fi
条件语句的适当表达式是什么?
要检查进程是否存在,请使用
kill -0 $pid
但正如所说,如果您希望它在任何情况下终止,那么只需
kill $pid
否则,您将遇到竞争条件,该过程可能在第一个kill -0.
kill -0
如果你想忽略的文本输出kill并根据退出代码做一些事情,你可以
kill
if ! kill $pid > /dev/null 2>&1; then echo "Could not send SIGTERM to process $pid" >&2 fi