だから、次のように動作するものがあります。
sleep 30 | sleep 30 &
それについて考える自然な方法は次のとおりです。
kill `jobs -p`
しかし、これは最初のものだけを殺し、sleep
2番目は死ぬことはありません。
これを行うと、両方のプロセスが終了します。
kill %1
ただし、実行中のジョブが多い場合は、最大1つのジョブが終了します。
名前は同じですが、このシェルで実行されていないプロセスを終了しないでください。
ベストアンサー1
xhienneの答えの短いバージョンですが、純粋なbashではありません。
jobs -p | xargs -I{} kill -- -{}