【问题标题】:How to kill all asynchronous processes如何杀死所有异步进程
【发布时间】:2010-03-18 10:48:31
【问题描述】:

假设我们有一个 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 个在后台运行的作业?

【问题讨论】:

    标签: bash process asynchronous command kill


    【解决方案1】:

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

    for x in $(jobs -p); do kill $x; done
    

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-02-06
    • 2013-08-19
    相关资源
    最近更新 更多