gpt4 book ai didi

path - 在cygwin中刷新Windows用户的环境变量

转载 作者:行者123 更新时间:2023-12-04 12:35:56 24 4
gpt4 key购买 nike

我想在执行setx VARNAME VARVALUE(特别是路径)后刷新cygwins环境。

'export VARNAME = VARVALLUE'不是一个选项,因为如果它是路径(到UNIX之类的格式),我将需要转换导出的值,但是VARNAME可以是路径也可以不是。

我想运行setx,然后刷新环境,以便VARNAME为PATH时,cygwin执行相应的转换。

最佳答案

要以Apiman的答案为基础,通常,您更有可能会在HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment中找到PATH,它包含系统PATH而不是用户的PATH。我还在下面做了一些更正。

在cygwin环境中运行此命令以加载Windows系统PATH(或通过更改var_name加载其他环境变量)

export var_name="PATH"
export $var_name="$(cygpath -pu "`reg query 'HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment' /v $var_name | grep $var_name | cut -c23-`")"

当然,使用上面的代码,Windows PATH将替换本地PATH,从而使您无法访问cygwin/bin和其他用户。相反,您可能想将Windows PATH附加到cygwin PATH:
export PATH="$PATH:$(cygpath -pu "`reg query 'HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Environment' /v PATH| grep PATH | cut -c23-`")"

关于path - 在cygwin中刷新Windows用户的环境变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8939480/

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