2

假设我们有一个 BASH 脚本在后台运行一些命令。有时我们想杀死他们所有人,无论他们是否完成了工作。

这是一个例子:

function command_doing_nothing () {
  sleep 10
  echo "I'm done"
}

for (( i = 0; i < 3; i++ )); do
  command_doing_nothing &
done

echo "Jobs:"
jobs

sleep 1

# Now we want to kill them

如何杀死在后台运行的这 3 个作业?

4

1 回答 1

3

要杀死所有作业(只要此脚本在其自己的 shell 实例中运行):

for x in $(jobs -p); do kill $x; done
于 2010-03-18T10:56:09.340 回答