如何在 Bash 中替换上一个命令中字符串的所有实例? [复制]

2024-02-29

如果我刚刚在 Bash 中输入以下命令:

echo foo

我可以通过输入以下内容将 foo 更改为 bar:

^foo^bar

这会导致执行以下命令:

echo bar

现在如果我输入:

echo foo foo

有没有办法仅通过使用脱字符号将 foo 的两个实例更改为 bar (^) 操作员?

此外,是否有 shell 操作符的手册页,例如^? man ^结果是“没有 ^ 的手动输入”。


这个特殊的功能被称为快速替换;它的文档可以在事件指示符 http://www.gnu.org/software/bash/manual/bashref.html#Event-DesignatorsBash 手册的部分。快速替换并不能做你想做的事;你将不得不求助于稍微更冗长的东西:

!!:gs/foo/bar/
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何在 Bash 中替换上一个命令中字符串的所有实例? [复制] 的相关文章

随机推荐