我有一个shell脚本,PROMPT_COMMAND
设置为一个函数。据我所知PROMPT_COMMAND
将在显示PS1
指向的下一个提示之前执行{如果我错了请纠正我。)
有一种情况是我的系统甚至在下一个提示出现之前就进行了重启,因此PROMPT_COMMAND
没有针对这种情况执行。
我需要执行PROMPT_COMMAND
指向的功能,即使提示没有显示,我还能做到吗?
我的PROMPT_COMMAND记录用户传递的输入,类似于历史记录
我是shell的新手,所以请帮助我。
平台:嵌入式平台 代码无法共享
答案 0 :(得分:1)
没有。
在Bash打印每个主要提示
之前检查变量PROMPT_COMMAND的值
https://www.gnu.org/software/bash/manual/bashref.html#Controlling-the-Prompt
无论你想做什么,你都需要找到一种不同的方式来做到这一点。
答案 1 :(得分:0)
您是否尝试过设置shell陷阱?
function my_exit_hook() {
clilog "Shell exiting" # Or whatever.
}
trap my_exit_hook EXIT TERM
为了它的价值,我维护了一个开源命令历史记录器,它已经完成了非常类似的事情。 https://github.com/barabo/advanced-shell-history
您可以在此处参考我的特定陷阱示例: https://github.com/barabo/advanced-shell-history/blob/82f9a92650040ed12a6cad511108396fa9a28dbe/shell/common#L86