gpt4 book ai didi

windows - 将环境变量从 powershell 传递到 MSYS2 bash

转载 作者:可可西里 更新时间:2023-11-01 10:19:20 30 4
gpt4 key购买 nike

如何在 PowerShell 中设置环境变量,使其在子 MSYS2 bash 进程中可见?这是一个 PowerShell session ,展示了我的尝试:

PS D:\msys64> $env:ABCD = "foo"
PS D:\msys64> usr\bin\bash -l -c "env | grep ABCD; echo Value: $ABCD"
ABCD=foo
Value:

如您所见,环境变量在 env 的输出中可见,但它不能用作 bash shell 变量,这意味着它不会真正起作用。

上述命令的预期输出为:

ABCD=foo
Value: foo

将环境变量传递给 MSYS2 的正确方法是什么?或者我该如何解决这个问题?

最佳答案

这里的问题是 Powershell 在调用 Bash 之前扩展了 $ABCD。解决方案是像这样编写命令,使用反引号作为转义字符:

usr/bin/bash -l -c "env | grep ABCD; echo Value: `$ABCD"

关于windows - 将环境变量从 powershell 传递到 MSYS2 bash,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33191437/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com