複数のコマンドを実行し、bashを使用してそれらをバックグラウンドにするにはどうすればよいですか?
例えば:
$ for i in {1..10}; do wait file$i &; done
ここで、waitはカスタムバイナリです。
今、私はエラーを受け取ります:
syntax error near unexpected token `;'
上記のコマンドを実行するとき。
バックグラウンドになったら、コマンドを並行して実行する必要があります。
エラーあなたがしているシーイングはによるものである
—
グレンジャックマン
&
と;
の両方の「コマンド・ターミネータ」です。両方を使用する必要はありません:for ...; do wait $arg & done
動作します。
@glennジャックマン。はい、質問を投稿してから実際に試しました。両方の必要はありません。and&
—
セビー
将来の読者のために、ドキュメントへのリンク:「リストは、演算子「;」、「&」、「&&」、または「||」のいずれかで区切られた1つ以上のパイプラインのシーケンスであり、オプションで1つで終了します「;」、「&」、または改行。」(強調鉱山)
—
グレンジャックマン
nohup
バックグラウンドでコマンドを実行できるようにする