在Windows上的Git Bash中,如何设置一个包含特殊字符的环境变量键名?比如
以下命令不可行:
some.var:
。以下命令不可行:
export "some.var:"=123
。some.var:
。export "some.var:"=123
。export
需要一个有效的标识符,因此它只能定义一小部分合法的环境字符串。
如果你有一个需要非有效标识符的名称的程序,你将需要使用外部程序来创建必要的环境变量。例如:
$ env -i "some.var:=123" env
some.var:=123
env
命令本身会报告其继承的环境变量。通过一个命令,可以在可能被修改的环境中运行该命令。使用 -i
可以清除初始环境(这样我们就不会淹没在无关的环境字符串中;实际上,如果你想继承当前环境,可以省略它),字符串定义了一个名为 some.var:
的变量具有值 123
。
my_cmd () { env "some.var:=123" my_cmd; }
。(这里没有递归,因为 env
将在您的路径中查找命令,而不是相同名称的 shell 函数。) - chepner