Git Bash没有看到我的PATH

ulu*_*ulu 93 windows bash git-bash

当我使用Git Bash(在Windows上)时,我不能在没有指定其完整路径的情况下运行任何可执行文件,尽管它位于我的PATH变量中的文件夹中.看起来bash无法识别它.为什么?我可以修理吗?

ulu*_*ulu 57

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

转向豪华的另一个原因..

谢谢@Tom指出我正确的方向.

  • 您也可以使用别名来缩短名称:```alias cup = cup.bat``` (2认同)
  • Windows 使用 PATH 和 PATH_EXTENSIONS 来解析可执行文件,而 Linux 世界仅使用 PATH (2认同)
  • 你的 shell 脚本绝对不应该被称为任何“.bat”;该扩展名意味着 Windows 批处理脚本 - 尤其是在 Windows 计算机上。 (2认同)

Tom*_*Tom 47

也许bash没有看到你的Windows路径.类型env|grep PATH在bash,以确认哪些路径看到的.

  • 我如何添加git-bash的路径来查看? (13认同)
  • @ AngelS.Moreno在你的主目录下更新或创建一个".bashrc"文件(例如git bash/cygwin中的"vim~/.bashrc"),然后添加"PATH = $ PATH:<your_path_1>:<your_path_2>: ..:<your_path_n>"到这个文件.因此,如果您希望"/ usr/bin/mypath"位于PATH变量中,则此行将显示为:PATH = $ PATH:/ usr/bin/mypath (13认同)
  • 尝试运行"which your_batch_file.bat"(不带引号).它应该返回批处理文件的位置,如果它确实在路径中. (2认同)
  • 就我而言,重新启动系统就足够了,以便在那里看到我的新路径变量。 (2认同)

Mik*_*yer 34

关注@ Daniel的评论并感谢@ Tom的回答,我发现Git bash确实使用了PATH,但没有使用我最近安装的最新路径.为了解决这个问题,我在我的家(windows)目录中添加了一个名为的文件:

.bashrc

以及内容如下:

PATH=$PATH:/c/Go/bin

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

go

在我的情况下,也许只是系统重启就足够了,但我很高兴这个解决方案在任何情况下都能正常工作.


Pav*_*vel 10

向 PATH 添加新值后重新启动计算机。

  • @christianbundy我不确定,但看起来有时重新启动终端没有帮助,但重新启动计算机有帮助,所以我写了这个答案。重新启动终端是我尝试的第一个。 (5认同)
  • 计算机不需要重新启动,终端会话需要重新启动。 (3认同)
  • 如此简单的答案,而且完全有效。 (2认同)

Zhw*_*hwt 10

如果您的git-bashsPATH存在但不是最新的,并且您不想重新启动但重新生成您的PATHs,您可以尝试以下操作:

  • 关闭所有cmd.exepowershell.exe和 ,git-bash.exe然后从“开始”菜单或桌面上下文中重新打开一个 cmd.exe 窗口。

  • 如果您在系统范围内进行了更改PATH,则可能还需要打开一个特权cmd窗口。

  • 从 Windows 资源管理器上下文菜单中打开 Git bash 并查看PATH环境是否已更新。请注意,IntelliJ IDEA 中的终端可能是登录 shell 或其他某种魔法,因此PATH在您重新启动 IDEA 之前它可能不会改变

  • 如果这不起作用,您可能还需要关闭所有Windows Explorer进程并重试上述步骤。

    Windows Explorer使用任务管理器关闭所有进程:

    1. 应用程序 - Windows 资源管理器 - 右键单击​​ - 结束任务
    2. 向下滚动
    3. Windows 进程 - Windows 资源管理器 - 右键单击​​ - 重新启动

注意:这并不适用于所有 Windows 版本,并且cmd.exe在“开始”菜单或桌面上下文菜单之外的任何位置打开可能都无法工作,用我的 4 台计算机进行测试,其中 3 台可以工作。我不明白为什么这是有效的,但由于PATH环境变量是在我登录和注销时自动生成的,所以我不会用变量串联来弄乱该变量。


Mut*_*. V 7

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

Git安装向导

它为我解决了:)

  • 在安装git之后你会怎么做? (12认同)

Smi*_*ver 7

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

PATH=$PATH:/c/Program\ Files\ \(x86\)/Application\ with\ space
Run Code Online (Sandbox Code Playgroud)

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

mv config.bashrc .bashrc
Run Code Online (Sandbox Code Playgroud)