【问题标题】:Set an environment variable in git bash在 git bash 中设置环境变量
【发布时间】:2016-03-14 04:33:05
【问题描述】:

当我从 windows gitbash 命令行打卡时:

set $HOME = c

然后做:

echo $HOME

它没有设置为c?如何更改/设置环境变量的值?

【问题讨论】:

    标签: git git-bash


    【解决方案1】:

    一个普通的变量是通过简单地赋值来设置的;请注意,= 周围不允许有空格:

    HOME=c
    

    环境变量是已标记为导出到环境的常规变量。

    export HOME
    HOME=c
    

    您可以将赋值与export 语句结合使用。

    export HOME=c
    

    【讨论】:

    • 那么 OP 的 set 是做什么的?
    • 假设$HOME 的“正常”值(这样不带引号的扩展会产生一个单词),它将前三个位置参数设置为$HOME= 的值,和c,分别。例如,set a b c; echo "$2" 将输出 b
    • 一般来说也适用于 bash。
    【解决方案2】:

    如果你想在 Git-Bash 中永久设置环境变量,你有两种选择:

    1. 设置一个常规的 Windows 环境变量。 Git-bash 在启动时获取所有现有的 Windows 环境变量。

    2. .bash_profile 文件中设置环境变量。

    .bash_profile 默认位于用户主文件夹中,例如C:\users\userName\git-home\.bash_profile。您可以通过设置HOME Windows 环境变量来更改 bash 主文件夹的路径。

    .bash_profile 文件使用常规 Bash 语法和命令

    # Export a variable in .bash_profile
    export DIR=c:\dir
    # Nix path style works too
    export DIR=/c/dir
    
    # And don't forget to add quotes if a variable contains whitespaces
    export ANOTHER_DIR="c:\some dir"
    

    阅读更多关于Bash configurations files的信息。

    【讨论】:

    • 您可能没有回答 OP 的问题,但您肯定帮我解决了我的问题。我试图在 Windows 上覆盖 Git Bash 的 PERL5LIB 环境变量,这让我很容易做到。
    • 您可能需要编辑 #1 以说明它与 Windows shell 中的命令相同,但语法不同(setx foo barsetx foo=bar)。因为你没有提到 setx,所以我误读了你的回答。
    • 出于某种原因,Git Bash 忽略了我的 Windows 的 HOME 环境变量。意思是,它不是使用我的 gitconfig,而是在 Git/etc 中使用它自己的。
    【解决方案3】:

    在您的主目录中创建一个 .bashrc 文件也可以。这样您就不必每次安装新版本的 git bash 时都复制 .bash_profile。

    【讨论】:

      猜你喜欢
      • 2018-12-29
      • 2014-02-24
      • 2012-10-01
      • 2020-06-19
      • 1970-01-01
      • 2016-10-07
      • 1970-01-01
      • 2021-09-23
      • 2021-11-16
      相关资源
      最近更新 更多