Windows 10 上的 Git Bash 忽略 Ctrl + C
Posted
技术标签:
【中文标题】Windows 10 上的 Git Bash 忽略 Ctrl + C【英文标题】:Git Bash on Windows 10 ignores Ctrl + C 【发布时间】:2019-06-05 04:55:42 【问题描述】:我在开始使用 Windows 10 后遇到了 git bash 的奇怪问题。
有时 Ctrl+C(和 Ctrl+X)不会终止 git bash 上的运行命令 但是我找不到与此类错误相关的任何依赖项
当 ctrl+c 不起作用时,我可以做些什么来避免此类问题或中断正在运行的命令?
【问题讨论】:
你想中断什么命令? 尽管我使用了命令,但我还是得到了这个 pb:git push
,mvn clean install
,rm -rf
【参考方案1】:
我在使用时也遇到了同样的情况:
C:\Program Files\Git\bin\sh.exe --login -i
但它不存在于:
C:\Program Files\Git\usr\bin\sh.exe --login -i
文件夹中的 sh.exe 和特定文件夹中的 bash.exe 之间的行为似乎没有任何区别。即 bin\bash.exe 与 bin\sh.exe 行为相同,而 usr\bin\bash.exe 与 usr\bin\sh.exe 行为相同
【讨论】:
我使用了以usr\bin\sh.exe --login -i
开头的git-bash.exe
,所以在我的情况下,我遇到了第二个问题
好吧,那你可以试试第一个
好建议,对我有用。使用的版本 - Git:2.26.2.windows.1,操作系统:Windows 10【参考方案2】:
我在 maven (3.6.2) 构建期间遇到了同样的问题。
当我检查 mvn
命令在我的 git-bash 中指向的位置时,结果发现调用了 unix 启动脚本。
由于我有点不愿意将 git-bash.exe 更改为其他内容(您永远不会知道还有什么问题),所以我的解决方案是在我的 ~/.bashrc
中引入一个别名:
alias mvn=mvn.cmd
这暂时解决了我的问题。除了生成一个 cmd 解释器来解释 cmd 文件之外,我还没有发现它的任何缺点。
关于原因:mvn
shell 脚本使用exec
作为它的最后一行,我怀疑这是原因。而这个exec
只能使用内置的 git-bash 命令;在我们的例子中,maven 执行 Windows java.exe
。
【讨论】:
以上是关于Windows 10 上的 Git Bash 忽略 Ctrl + C的主要内容,如果未能解决你的问题,请参考以下文章
我可以在 Windows 上的 Git Bash 中使用 gcloud 吗?
如何在 Windows 上的 Git Bash 中退出“git diff”的结果? [复制]
sh 使用Windows上的Git Bash通过命令行打开WebStorm文件。