【问题标题】:Extend $PATH variable in git bash under Windows在 Windows 下的 git bash 中扩展 $PATH 变量
【发布时间】:2018-02-09 07:55:54
【问题描述】:

我正在尝试通过将以下内容添加到文件 ~/.bashrc 中来扩展我在 git bash (MinGW shell) 中的 $PATH 变量

PATH=$PATH':/c/Program Files/maven/apache-maven-3.2.5/bin'

在我这样做并重新启动 bash 之后,似乎 $PATH 变量已按预期扩展:

$ echo $PATH
MANY_OTHER_PATHS:/c/Program Files/maven/apache-maven-3.2.5/bin

但我仍然无法执行给定目录中的程序:

$ mvn
bash: mvn: command not found

这里出了什么问题?如何正确扩展 PATH 变量?

【问题讨论】:

  • 怀疑您需要转义 Program Files 中的空间。试试程序\文件。
  • 那也行不通。我之前已经试过了

标签: path mingw git-bash


【解决方案1】:

这里有两个想法。

你的路径可以用双引号。

export PATH=$PATH:"/C/Program Files (x86)/apache-maven-3.3.3/bin"

或者,您也可以为目录创建符号链接。

ln -s "/C/Program Files (x86)/apache-maven-3.3.3/bin" ./mvnbin
导出 PATH=$PATH:/your-path/mvnbin

它适用于 mingw32 环境。

【讨论】:

  • 你也可以创建一个别名(基本上相当于符号链接)。
  • 好的,可以选择谢谢,但你也可以回答他
  • 当我运行第一个命令(将目录添加到PATH)时,我得到一个无用的错误“bash: /c/my/path: Is a directory”(当然它是一个目录!)即使我的语法与你的(只是不同的文件夹路径)。有什么想法吗?
  • 将其设为别名,然后将其添加到对我有用的路径中。只需将单个二进制文件添加到带有别名的路径即可。
【解决方案2】:

每次打开 Git Bash 路径时,我都需要永久添加一些内容。它是 Meld.exe 路径,可以添加:

export PATH=$PATH:"/C/Program Files (x86)/Meld/lib"

为了在每个 bash 会话中执行此命令,您需要一个 ~/.bashrc 文件。检查它是否已经存在或使用notepad ~/.bashrctouch ~/.bashrc 创建它。

您可以通过以下方式查看它的位置:

echo ~

打开它并添加添加 PATH 的命令(此响应中的第一个命令)。

我希望你觉得这很有用。

【讨论】:

    【解决方案3】:

    根据this SO post,您需要使用引号转义程序文件。 git-bash $PATH cannot parse windows directory with space

    【讨论】:

    • FWIW,在你的第一篇文章中,你有一个单引号 before the : 这是行不通的。我会通过尝试将您的路径设置为仅 maven bin 目录来进行调试,以避免在路径的其他部分出现解析错误。
    • 另外,要调试,您不需要编辑 .bashrc,您可以在提示符下更改当前会话。 'source ~/.bashrc' 也会重新运行脚本。
    • 谢谢,这是非常好的提示。但不幸的是,无论我如何更改它,它都无法正常工作。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-06-30
    • 1970-01-01
    • 1970-01-01
    • 2012-03-17
    • 1970-01-01
    相关资源
    最近更新 更多