这是一个简单的问题。
有时在终端上,当你犯了一个小错误时,控制台会问¿你的意思是......? - ¿有没有办法快速接受这个建议?。
例如:
$ git add . -all
error: did you mean `--all` (with two dashes ?)
是否有一个命令重复最后一行,但有两个破折号?
如果您忘记撰写sudo
,则可以执行sudo !!
并解决您的问题。我想知道是否有类似的事情,但error: did you mean
案例。
答案 0 :(得分:3)
在......
的情况下$ git add . -all
error: did you mean `--all` (with two dashes ?)
...消息由git 直接写入终端。这意味着bash无法知道写的是什么消息;实际上,在shell中实现任何可以自动执行修正而不使shell下运行的程序效率大大降低(通过将其输出通过shell而不是直接路由到终端)并改变其行为(如果他们曾经在他们的stdout或stderr上打电话给isatty()
。
那说,你当然可以运行
^-all^--all
...如果您没有关闭历史记录扩展功能,就像使用set +H
一样(如果关闭,则可以使用set -H
重新启用它)。我通常做关闭此功能,我自己;它常常比它的价值更麻烦(当脚本使用历史扩展敏感的字符时,制作在脚本中完美运行的命令会破坏交互式shell,尤其是!
)。