
이와 유사합니다:쉘 스크립트에서 실행된 마지막 명령을 반환합니다..
lastCommand=$(some command here)
동일한 결과를 얻을 수 있지만 대신 bash 스크립트가 아닌 bash 함수 내에서 사용할 수 있습니까?
추신
lastCommand
이전 명령을 의미내부에함수.
Bash 4.2+ 솔루션으로 충분합니다.
답변1
xtrace
즉, set -x
셸이 실행하는 모든 명령의 기록을 얻으려면 다음을 사용할 수 있습니다 .
설정:
xtracefile=$(mktemp)
exec 9>"$xtracefile"
BASH_XTRACEFD=9
set -x
그럼 뭐든지 실행해
foo() { echo foo; echo bar; }
foo
이제 $xtracefile
다음 줄을 포함해야 합니다.
+ echo foo
+ echo bar
이를 사용하여 원하는 것을 선택할 수 있습니다. 이렇게 해도 파일이 어느 시점에서든 지워지거나 정리되지는 않으며 파일이 무한정 커집니다.
표시 를 없애고 싶다면 를 +
할당하세요 PS4=""
.