bash 함수에서 실행된 마지막 명령을 반환합니다.

bash 함수에서 실행된 마지막 명령을 반환합니다.

이와 유사합니다:쉘 스크립트에서 실행된 마지막 명령을 반환합니다..

 lastCommand=$(some command here)

동일한 결과를 얻을 수 있지만 bash 스크립트 대신 bash 함수에서 사용할 수 있습니까?

폴리스티렌

lastCommand이전 명령을 나타냅니다.~에기능.

Bash 4.2+ 솔루션이면 충분합니다.

답변1

xtraceie를 사용하여 set -x셸에서 실행된 모든 명령의 기록을 가져올 수 있습니다.

설정:

xtracefile=$(mktemp)
exec 9>"$xtracefile"
BASH_XTRACEFD=9
set -x

그런 다음 무엇이든 실행하세요.

foo() { echo foo; echo bar; }
foo

이제 $xtracefile다음 줄이 포함 되어야 합니다.

+ echo foo
+ echo bar

이를 사용하여 원하는 것을 선택할 수 있습니다. 이렇게 하면 언제든지 파일이 지워지거나 정리되지 않으며 파일이 무한정 커집니다.

이러한 기호를 제거하려면 +을 지정하십시오 PS4="".

관련 정보