关于Windows:Git Bash看不到我的路径

Git Bash doesn't see my PATH

当我使用Git Bash(在Windows上)时,尽管未指定任何完整路径,但我无法运行任何可执行文件,尽管该可执行文件位于PATH变量中的文件夹中。 好像bash无法识别它。 为什么? 我可以解决吗?


得到它了。作为Windows用户,我习惯于键入不带扩展名的可执行文件名称。就我而言,我想执行一个名为cup.bat的文件。在Windows Shell中,键入cup就足够了。 Bash不能这样工作,它需要全名。键入cup.bat解决了该问题。 (虽然我无法运行该文件,因为显然bash无法理解其内容)

切换到posh-git的另一个原因。

感谢@Tom为我指出正确的方向。


也许bash看不到您的Windows路径。在bash中键入env|grep PATH确认其看到的路径。


跟随@Daniel的评论并感谢@Tom的回答,我发现Git bash确实在使用PATH,但没有使用我最近安装的最新路径。
要变通解决此问题,我在主目录(windows)中添加了一个名为:

.bashrc

内容如下:

PATH=$PATH:/c/Go/bin

因为我正在安装Go,并且此路径包含可执行文件go.exe
现在,Git bash能够识别该命令:

go

就我而言,也许只需重启系统即可,但是我很高兴在任何情况下都可以使用此解决方案。


在C: Users USERNAME中创建一个文件config.bashrc,其中包含:

1
PATH=$PATH:/c/Program\ Files\ \(x86\)/Application\ with\ space

现在,将命令行上的文件移动到正确的位置:

1
mv config.bashrc .bashrc

在安装Git时,您可以选择以下所示的选项,它将帮助您自动设置路径。

Git installation wizard

它为我解决了:)


将新值添加到PATH之后,重新启动计算机。


旧问题,但可以帮助其他人。

我已经更改了我的PATH用户名,此后,我刚刚注销并再次登录。

这就对了! git bash正确加载了新的PATH值。


似乎根本原因是Git Bash无法始终正确解析变量%USERPROFILE%。而不是使其相对于C: Users \,而是获得值C: Windows System 32 systemprofile
将其更改为完全限定的地址后,它可以正常工作,即使以后再将其设置回去,由于某些原因,Git Bash仍然具有正确的PATH。


我可以确认重新启动系统将确保git在Windows环境变量中设置的PATH被选中,并且没有其他自动方式。


在Windows 10上,只需卸载git并重新安装即可。它将自动为您设置环境变量。
我错误地删除了环境变量,并且无法在IDE中使用git。重新安装git解决了此问题。


就我而言,这是在安装heroku cli和git bash时发生的,
这是我所做的工作。

到达这个位置

C:\Users\\AppData\Local

并删除我的heroku文件夹中的文件。
所以我删除了文件夹并运行cmd。这是工作


当我尝试使用mingw编译Win10中的xgboost库时,我遇到了这个问题。终于我找到了解决方案。

在主目录(通常为C: Users username)中创建一个名为.bashrc的文件。然后添加路径。如果您的路径包含空格,请记住使用引号,并且请记住使用/ c /而不是C:/

例如:

PATH = $ PATH:" / c /程序文件/mingw-w64/x86_64-7.2.0-posix-seh-rt_v5-rev1/mingw64/bin"


我遇到了一个愚蠢的错误。我在Windows 10机器上为golang工作区设置了系统范围的用户变量路径。当我删除冗余系统变量路径并注销然后重新登录时,我能够在bash中调用.exe文件并成功调用go env。

尽管已经回答了OP,但这是另一个问题,可能使bash无法看到您的路径。我只是再次用这个问题测试了bash,它似乎确实产生了某种冲突,从而阻止了bash遵循任一路径。


对我来说,最方便的是:
1)在C:驱动器的根目录中创建目录" bin"
2)添加" C:/ bin;"到"我的电脑->属性->环境变量"中的PATH


我知道这是一个老问题,但是有两种类型的环境变量。一台归User所有,一台遍及整个系统。
根据您如何打开git bash(具有用户权限或具有管理员权限),所使用的环境变量PATH可以来自您的用户变量,也可以来自系统变量。
见下文:
enter image description here

如上一个答案中所述,请使用命令env|grep PATH来查看您正在使用的命令,并相应地更新变量。
顺便说一句,无需重新启动系统。只需关闭并重新打开git bash


编辑/添加到$ PATH变量时,请勿转义()特殊字符。
例如,程序文件中的应用程序目录如下所示:
PATH=$PATH:/c/Program Files (x86)/random/application

不要这样做:
PATH=$PATH:/c/Program\ Files\ \\(x86\\)/random/application/

希望这可以帮助。


对于尝试过所有上述方法(包括Windows系统环境)的人们。变量,.bashrc,.bashprofile等。并且可以在'echo $ PATH'中看到正确的路径...我可能为您提供解决方案。

使用exec 2> / dev / null抑制错误

我的脚本运行正常,但是抛出了"找不到命令"或"找不到目录"错误,尽管据我所知,这些路径是刷新的。因此,如果您抑制了这些错误(可能还必须添加'set + e'),则它将正常工作。


创建一个名为Path的用户变量,并添加%Path%作为值,我注意到Git Bash仅看到用户变量而不是系统变量。通过执行上述过程,您将在用户变量中公开系统变量。


在Windows 7路径环境变量中
我只是在系统变量路径的末尾添加

; C: Program Files Git bin

现在就可以了!