関数が終了するときにbashでコマンドを呼び出すことは可能ですか?私は次のようなものを意味します:
function foo
{
# something like this maybe?
trap "echo \"exit function foo\"" EXIT
# do something
}
foo
そして、出口関数fooを出力したいと思います。
はい、RETURN
をトラップできます:
$ function foo() {
> trap "echo finished" RETURN
> echo "doing some things"
> }
$ foo
表示されます
doing some things
finished
man bash
によるtrap
ビルトインの説明から:
SigspecがRETURNの場合、コマンドargは、Shell関数またはスクリプトがで実行されるたびに実行されます。または、ソースのビルトインが実行を終了します。