私はしばしばCPU、ディスク、RAM、またはインターネット接続にバインドされた長期実行コマンドを実行します。実行中に同様のコマンドを実行したいと思いました。大きなものをダウンロードするとしましょう。
それからシェルを起動しwget ...1
て実行しましょう。別のシェルを開いて別のシェルを実行できますが、wget ...2
今度は帯域幅を離して競います。実行中のシェルに2番目のコマンドを入力すると、インタラクティブではないwget
ため、後で実行されます。
BashまたはFish Shellを使用してこれを行うための合理的な方法はありますか?
ベストアンサー1
すでにフォアグラウンドで実行されている場合は、wget http://first
+を使用して一時停止し、すぐに別のコマンドを使用してジョブの状態に戻すことができます。CTRLz
fg ; wget http://second
ほとんどの場合動作します。
このアプローチが許可されていない場合は、ロックファイルを使用する必要があります。または、ps
ファイルをロックする方法でプロセスを監視することもできます。