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 스크립트로 래핑할 수 있습니다.

관련 정보