在替换语法或拼写错误时重新运行最后一个命令
如果您曾经在终端中输入过长的命令,并且在执行时发现语法错误、“没有这样的文件或目录”或“找不到命令”的消息,因为您打错了字,您会喜欢这个快速提示,让您在替换错误语法的同时重新运行上次执行的命令。您需要使用默认的 bash shell 才能正常工作。
使用的一般语法如下:
<代码>!!:gs/旧/新代码>
!!再次运行最后一个命令,而 :gs/old/new 将最后一个命令中的文本“old”替换为“new”。
例如,这是一个简单的更改目录命令,但路径中有错误:
cd /System/Library/CoerServices/Dock.app/Contents/
注意“CoerServices”应该是“CoreServices”,但您可以输入以下内容,而不是再次键入整个命令和路径:
!!:gs/Coer/Core/
突然之间,您进入了正确的目录。
当您发现某个地方的命令行语法中存在错误时,这显然非常有用,但它也非常适合通过事物打开和关闭设置 like defaults write commands 将“no”替换为“yes”等等:
<代码>!!:gs/否/是代码>
您还可以将 sudo 放在 !! 前面以 root 身份运行上一个命令。