![마지막으로 실행된 명령의 이름을 어떻게 알 수 있나요? [폐쇄]](https://linux55.com/image/144694/%EB%A7%88%EC%A7%80%EB%A7%89%EC%9C%BC%EB%A1%9C%20%EC%8B%A4%ED%96%89%EB%90%9C%20%EB%AA%85%EB%A0%B9%EC%9D%98%20%EC%9D%B4%EB%A6%84%EC%9D%84%20%EC%96%B4%EB%96%BB%EA%B2%8C%20%EC%95%8C%20%EC%88%98%20%EC%9E%88%EB%82%98%EC%9A%94%3F%20%5B%ED%8F%90%EC%87%84%5D.png)
Linux에서 다음 스크립트를 실행한다고 가정합니다.
/tmp/start.sh
명령을 실행한 후 마지막으로 실행한 명령의 이름을 검색할 수 있는 방법이 있습니까?
예상 출력
start.sh
답변1
대화형 셸 bash
에서 기록 확장을 사용합니다 .
$ /some/path/script.sh
$ printf 'Basename of last command line: %s\n' "$(basename "!!")"
printf 'Basename of last command line: %s\n' "$(basename "/some/path/script.sh")"
Basename of last command line: script.sh
!!
마지막 명령으로 대체될 내역 확장 이벤트 표시기입니다 . 매뉴얼의 "역사적 확장" 섹션을 참조하십시오 bash
.
!!
전체 명령줄로 확장 됩니다 .
쉘 스크립트에서는 방금 입력했기 때문에 이전 스크립트의 이름을 항상 알 수 있습니다.
/some/path/script.sh
echo 'script.sh just finished'