【发布时间】:2017-11-01 04:44:06
【问题描述】:
【问题讨论】:
标签: git shell command-line
【问题讨论】:
标签: git shell command-line
即使没有必要,请尝试以下操作:
/c/Windows/System32/cmd.exe //c 'start .'
start 是 cmd.exe 内部的命令,因此必须使用 cmd /c 调用它(并且 Git Bash 显然需要 加倍 / chars. 被识别为cmd-style option-prefix characters).
但是, 有一个 shell 脚本包装器 - /usr/bin/start - 可以为您完成此操作。
在你的情况下,这个 shell 脚本出人意料地抱怨找不到 cmd,即使 /c/WINDOWS/system32 默认应该在你的 $PATH 环境变量中 - 请检查该变量并查看它是否在某处被意外修改。
$PATH 最初在 /etc/profile 中定义,但可以在 ~/.bash_profile 中覆盖/修改,例如。
/etc/profile 还包含 cmets 中的有用链接:
# Some resources...
# Customizing Your Shell: http://www.dsl.org/cookbook/cookbook_5.html#SEC69
# Consistent BackSpace and Delete Configuration:
# http://www.ibb.net/~anne/keyboard.html
# The Linux Documentation Project: http://www.tldp.org/
# The Linux Cookbook: http://www.tldp.org/LDP/linuxcookbook/html/
# Greg's Wiki http://mywiki.wooledge.org/
【讨论】:
git 安装程序将C:\Program Files\Git\cmd 添加到 Window 的 PATH 环境变量中。
在某些 PC 配置中,这可能不足以运行所有 git 执行命令。例如,我遇到了git fetch 执行正常,但git help fetch 产生错误/usr/bin/start: line 8: cmd not found 的情况@
按照#mklement0 的建议,将C\Windows\System32 添加到Window 的PATH 环境变量后,所有git 命令都会为我执行而不会出错。
尝试将;C\Windows\System32 附加到 Window 的 PATH 环境变量中,如下所示:
;,将以下内容添加到“变量值”文本的末尾:;C:\Windows\System32
【讨论】:
我遇到了类似的问题,因为我的路径包含 %SystemRoot%\system32。原来环境变量 %SystemRoot% 不是静态定义的,而是在启动 cmd.exe 或 power shell 时自动包含在环境中的。由于 MINGW64 的 bash 两者都不是,它只看到 %SystemRoot%/system32 并且无法遍历它来找到 cmd.exe。
更改使用 C:\Windows\System32 的路径可以解决此问题。
【讨论】: