2つのバックグラウンドスクリプトの出力を印刷します。

2つのバックグラウンドスクリプトの出力を印刷します。

バックグラウンドで3番目のスクリプトと同時に実行される異なるスクリプトの2つの出力を印刷しようとしています。

3番目のスクリプトは次のとおりです。

#!/bin/bash
./script1 &
./script2 &

各スクリプトの出力は単純な進行状況バーです。

scriptN: [##....................] (10%) (10/100)

出力が次のようになります。

script1: [##....................] (10%) (10/100)
script2: [##....................] (10%) (10/100)

ベストアンサー1

少なくとも途方もない努力がなければ不可能だと思います。端末の動的進行状況バーは制御文字を使用してカーソル位置を変更し、画面に文字を再描画します。 2つのプログラムを同時に実行してそれぞれの描画内容を制御しようとすると、2つのプログラム間で競合が発生します。

たぶん、端末をエミュレートし、各出力ストリームを独立して結合してから単一のストリームに再結合するスクリプトを書くこともできますが、以前にそのようなことを試みた人は聞いたことがありません。

おすすめ記事