当函数退出时,bash中是否有可能调用某些命令。我的意思是:
function foo
{
# something like this maybe?
trap "echo \"exit function foo\"" EXIT
# do something
}
foo
我希望打印退出功能foo。
答案 0 :(得分:15)
是的,你可以陷阱RETURN
:
$ function foo() {
> trap "echo finished" RETURN
> echo "doing some things"
> }
$ foo
将显示
doing some things
finished
来自man bash
内置trap
的描述:
如果sigspec是RETURN,则每次执行shell函数或脚本时都会执行命令arg。或源内置完成执行。