この関数を使用して、4つの端末ウィンドウを並列に実行するスクリプトを実装しようとしていますgnome-terminal -e sh -c "python scraper.py"
。各スクリプトが終了するのを待ってから、他の複数のコマンドを実行する方法があるかどうか疑問に思います。誰かが助けることができることを願っています。
答え1
gnome-terminal
3.27.1この問題を解決するためのオプションが導入されました--wait
。だから実行してください:
$ gnome-terminal --wait -e sh -c "python scraper.py"
答え2
別の端末でスクレイピングスクリプトを実行しないことをお勧めします。これは完璧なユースケースになりますGNUパラレル複数のプロセスを同時に実行できます。これにより、スクリプトの実行が完了したら、次のコマンドを実行できるように制御権がシェルに返されます。
答え3
問題は、gnome-terminalがすぐにシェルに制御を返すことです。呼び出されたコマンドが完了するのを待ちません。 4つのバックグラウンドプロセスを実行し、完了するまで待つことができます。
background_process_1 &
background_process_2 &
background_process_3 &
background_process_4 &
wait
other commands
...