【发布时间】:2020-06-04 17:37:41
【问题描述】:
我想记录来自特定 TTY 的所有 shell 命令的退出代码,而不需要为每个命令附加语法。
例如:
> source solution.sh # sets up this bash session to monitor exit codes
> ls
> ls f
ls: f: No such file or directory
> echo "hello world"
某些文件会存储退出代码:
0
1
0
这可能吗?如果没有,我愿意接受其他可能完成类似任务的想法。
我的最终目标是收集关于我执行的所有命令及其退出代码的数据(有点像 ~/.bash_history 附加退出代码)
【问题讨论】:
-
我想不出任何直接的方法来做到这一点。另外,如果您有一个带有子命令的命令,例如
if块,您是否要保存子命令的退出代码以及整个块? -
你真正想用这个解决什么更大的问题?也许有更好的方法来实现它。
-
考虑启用进程记帐。
-
可能是调试陷阱?
-
你能简单用吗:
PROMPT_COMMAND='echo $? >> ~/exit-codes.log'?