替换最后一个命令的最后一个单词,但保留第一个单词

替换最后一个命令的最后一个单词,但保留第一个单词

假设我有一个脚本,用于使用某些选项来 grep 一堆文件,并使用许多不同的单词运行该脚本:

$ mygrep worda
[output]
$ mygrep wordb
[output]
$ mygrep wordc
[output]

我知道!$是最后一个命令的最后一个词的占位符。第一个单词是否有类似的占位符,以便我可以节省一些打字时间?

答案1

不是$!——bash!$历史扩展始于!.

!$最后一个参数的相反是!^第一个参数争论

以前的命令可以检索为!:0,但不像 那样容易输入!$

您还可以进行搜索并替换为^worda^wordb。那不是全球的搜索&替换,它只替换找到的第一个。全局搜索和替换是!!:gs/worda/wordb.

唷。更多信息请访问https://www.gnu.org/software/bash/manual/bashref.html#History-Interaction

相关内容