在 bash 终端中每次执行时自动执行命令列表

在 bash 终端中每次执行时自动执行命令列表

我希望每次在 bash 终端中执行命令时自动执行命令列表。

这可能吗?

答案1

如果你想在每个命令后执行一个 post-lude,你需要一个DEBUG陷阱,如评论中提到的。如果您只需要在 Bash 提示您返回后执行命令...$,那么您可以使用PROMPT_COMMAND

附加到任何现有的(可能没有)PROMPT_COMMAND,处理换行符:

PROMPT_COMMAND=${PROMPT_COMMAND%$'\n'}$'\nmyjunk'

笔记:

  • 附加到 shell 脚本(并且是 shell 脚本)的唯一安全方法PROMPT_COMMAND是首先附加换行符。
  • Bash、ksh 和 zsh 具有$''翻译\n和其他转义的语法。这不是 POSIX 指定的

myjunk用。。。来代替yourjunk

相关内容