无法别名!! (双重感叹号)在bash中

无法别名!! (双重感叹号)在bash中

我试图在 bash 中创建一个别名

alias r='!!'

我的想法是创建一个简单的别名 r 来运行前面的命令而不是使用 !! (双重感叹号)运行最近的命令,因为它很难键入。我知道我可以alias r='fc -s'完成这项工作,但我试图理解为什么我无法为!!.我想了解!!bash 的含义以及为什么我无法为其添加别名。我可以为其他 bash 内置命令创建别名,例如alias cdir='cd',但是!! 如果我无法正确解释,为什么不呢?

答案1

bash 中的历史扩展(其中 是其中!!的一部分)发生在该行被拆分为单词和扩展别名之前。因此,无法在别名或函数中使用任何历史扩展。

这与原著中的不同csh

相关内容