我想知道是否可以在历史记录中存储已评估的命令而不是别名。特别是对于许多具有别名的用户,在历史搜索时很难对其进行概述。
示例:
$ alias a2re="apache2ctl restart"
$ a2re
$ history
1 a2re
而不是:
$ history
1 apache2ctl restart
有没有人知道bash / zsh是否有这样的选项?
答案 0 :(得分:0)
不是我知道的。至少在{kbd> Enter 执行命令之前,记录输入缓冲区中的内容(在经历历史扩展之后)。一种解决方法是告诉shell在提交执行之前展开行。键入别名后,键入 Meta - Control - e (其中 Meta 是您的 Alt 或 Esc 键,具体取决于您的设置)。这将像shell一样扩展该行,但是在执行它之前将命令留在命令行上以进行进一步编辑,方法是按 Enter 。然后,命令的扩展形式将保存在历史记录中。