Control+C割り込みによるチェーンコマンド

Control+C割り込みによるチェーンコマンド

無限に繰り返されるプログラムを実行しようとして強制的に中断する必要があります。プログラムを実行した後に削除したい。いくつかのステップを踏むだけです。

  1. ./MyProg
  2. Control+C
  3. rm MyProg

ところで、この作業を頻繁に行う必要があるため、ステップ1と3を一行に入れて記録をより簡単に覚えるようにしたいと思います。

私は次のことを試しましたが、すべてのケースでControl+ Cbreakは実行プログラムだけでなく行全体を終了するため、ファイルは削除されません。

./MyProg && rm MyProg
./MyProg;   rm MyProg
./MyProg || rm MyProg

コマンドライン全体に影響を与えずに実行中のプログラムにのみ割り込みを影響させる方法は?

ベストアンサー1

trapプログラムが終了したら、プログラム内のメカニズムを使用してクリーンアップMyProgできます。

trap "rm MyProg" EXIT

MyProgがbashスクリプトではない場合は、プログラムをbashスクリプトにラップできます。

おすすめ記事