在我的历史记录中给定一个命令,我如何运行同一个命令来更改一个参数?
例如,如果命令34是script.sh a b c
,我如何使用某种参数替换来运行命令script.sh a fff c
?
假设在现实生活中,b
不容易键入,因此使用通用字符串替换机制是不合理的。我知道我可以使用编辑和执行,但我正在寻找一种不需要打开文本编辑器的方法。我想有类似!34:blahblahblah
的东西,但我不知道怎么做。
我试着阅读zsh替换的手册,但我觉得我不知道该找什么关键词。
编辑:我知道历史和编辑评论使用读线或编辑和执行。我正在寻找更像"与命令34相同,但将第三个参数更改为blah
,类似于如何编写!34:3
来引用命令34上的参数。
我能想到的唯一可能性是相当麻烦的
!!:0-2 new-argument !!:4
!!:0-2
重复该命令及其前两个参数,!!:4
是最后一个命令的最后一个参数(如果您愿意,也可以写成!$
(。
对于我们可以执行的确切las命令:
^b^fff
使用插入符号指示要替换的内容和替换。