如何接受'Did you mean?'终端/git 建议



这是一个简单的问题。

有时在终端上,当你犯了一个小错误时,控制台会问?你是说…?-有没有办法迅速接受这个建议?。

例如:

$ git add . -all
error: did you mean `--all` (with two dashes ?)

有没有一个命令重复最后一行,但用两个破折号?

如果你忘记写sudo,你可以只写sudo !!,它会解决你的问题。我想知道除了error: did you mean的情况之外,是否还有类似的情况。

在。。。

$ git add . -all
error: did you mean `--all` (with two dashes ?)

消息由git直接写入终端。这意味着bash无法知道写了什么消息;如果不降低在shell下运行的程序的效率(通过shell而不是直接将其输出路由到终端)并改变其行为(如果他们在stdout或stderr上调用isatty()),那么在shell中实现任何可以自动执行纠正的东西都是不可能的。


也就是说,你当然可以运行

^-all^--all

如果您没有关闭历史扩展,如set +H(如果关闭,则可以使用set -H重新启用)。我通常会自己关闭这个功能;这通常比它的价值更麻烦(当脚本中使用历史扩展敏感的字符,特别是!时,使在脚本中运行良好的命令在交互式shell中崩溃)。

最新更新