我知道我可以使用 $?查看最后执行的命令的退出代码,但是如果我想确定我是否抛出了自己的“exit 0”或“exit 1”怎么办?
例如:
#!/bin/bash -e
trap "{ echo Exit code $?; exit; }" EXIT
exit 1
如果我运行此脚本,它会打印出“退出代码 0”,然后以退出代码 1 退出。我可以访问陷阱中的代码,还是我只是以错误的方式处理此问题?换句话说,我希望这个简单的脚本打印出“退出代码 1”。
最佳答案
它是 0,因为脚本开头的 $?
是 0,由于双引号而被替换。
试试这个:
trap '{ echo Exit code $?; exit; }' EXIT
关于bash - 您可以访问陷阱中退出命令的代码吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6176834/