假设我已经编写了以下命令,但尚未按 Enter 键来执行它:
$ ls dir1 dir2 dir3
有没有一种方法可以替换给定的字符,而无需在每个位置手动更改它们?例如,我想按一些快捷键,输入要替换的字符串(例如,dir
),然后输入另一个字符串作为其替换(例如“目录”)。
答案1
有一个replace-string
可自动加载的小部件。添加到您的~/.zshrc
:
autoload replace-string
zle -N replace-string
zle -N replace-string-again
bindkey '\eg' replace-string-again
bindkey '\er' replace-string
然后按Alt+r即可调用。Alt+g重复上次替换。info zsh replace-string
详情请参阅。