0

コーンシェルを使用しています。これは待機を使用して可能なシナリオですか? それの(2)インスタンスはどこにありますか?

#!/usr/bin/ksh
a &
wait
b &
c &
wait
d

私の目標は、最初に a を実行し、完了したら b、c を同時に起動することです。b、c が完了したら、"d" を実行します。

4

1 に答える 1

2

あなたの状況のセマンティクスを完全に理解しているかどうかはわかりません。あなたが直面している問題は、 b と c の両方
を待つことを中心に展開しているように思えます。

これを解決する方法は次のとおりです (潜在的に)
まず、a を待ちます。待ちが戻った瞬間に、b と c を起動します。2 つの待機を使用できます。1 つは b 用、もう 1 つは c 用です。とにかく両方を待機したいので、これらの順序は重要ではありません。
両方の待機が戻ったら、d を起動できます。

  • 火をつける
  • 待って
  • 火b、c
    • 火b
    • 火 c
  • b,cを待ちます
    • 待ってb
    • 待って c
  • 火のd
于 2013-08-13T15:14:51.923 に答える