bash – 如何检查是否存在进程标识(PID)

前端之家收集整理的这篇文章主要介绍了bash – 如何检查是否存在进程标识(PID)前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
在bash脚本中,我想要做以下(在伪代码中):
  1. if [ a process exists with $PID ]; then
  2.  
  3. kill $PID
  4.  
  5. fi

条件语句的适当表达式是什么?

要检查进程的存在,请使用
  1. kill -0 $PID

但正如@unwind所说,如果你要杀了它,无论如何,只是

  1. kill $PID

或者你会有一个竞争条件。

如果你想忽略kill的文本输出并做一些基于退出代码的事情,你可以

  1. if ! kill $PID > /dev/null 2>&1; then
  2. echo "Could not send SIGTERM to process $PID" >&2
  3. fi

猜你在找的Bash相关文章