用于运行最近匹配的历史记录项的 zsh 别名

用于运行最近匹配的历史记录项的 zsh 别名

我想在 zsh 中创建一个别名,运行以 开头的最后一个终端命令node。我可以用 运行该命令!?node,但无法用 创建别名alias N='!?node'。我该如何创建这个别名?

答案1

历史记录扩展在命令行上执行别名扩展。因此,将历史扩展放入别名中是行不通的,因为别名扩展后,不会再执行历史扩展。

另一方面,参数扩展是执行别名扩展。因此,你可以改用这个:

alias N='"${(z)history[(r)node *]}"'

相关内容