Windows 在PowerShell或cmd中读取环境变量会产生不同的结果
我一直在思考Windows7环境变量的问题 我们有一个Jenkins服务器,它无法在Windows 在PowerShell或cmd中读取环境变量会产生不同的结果,windows,environment-variables,Windows,Environment Variables,我一直在思考Windows7环境变量的问题 我们有一个Jenkins服务器,它无法在%HOME%环境变量中找到SSH密钥,因为它想要访问路径: /c/users/jenkins 但是如果我使用 echo %HOME% 在一个普通的命令提示符窗口中,作为我的Jenkins用户,结果是 C:\users\jenkins 但是,如果我在Windows PowerShell中使用environment命令,我也会 /c/user/jenkins 在可以从系统属性-高级标签->环境中访问的普通GU
%HOME%
环境变量中找到SSH密钥,因为它想要访问路径:
/c/users/jenkins
但是如果我使用
echo %HOME%
在一个普通的命令提示符窗口中,作为我的Jenkins用户,结果是
C:\users\jenkins
但是,如果我在Windows PowerShell中使用environment命令,我也会
/c/user/jenkins
在可以从系统属性-高级标签->环境中访问的普通GUI中,我得到以下信息
C:\users\jenkins
我试着让他们后退,但问题依然存在。只要Jenkins获得与PowerShell相同的输出
我该如何让他们退后?(并非cmd和Windows系统认为它们设置错误。)
访问同一个环境变量究竟是如何给我不同的输出的?
有没有办法做到这一点?
它们存储在哪里,以便我可以手动编辑它们的存储位置?正如@Luis在评论中提到的,
env
命令不是PowerShell的一部分。它可能是由您安装的其他一组实用程序提供的,旨在模拟
要在PowerShell中引用环境变量,请使用$env:
语法或环境提供程序-获取内容env:\
要设置环境变量,可以使用$env:=“”
有关详细信息,请尝试在PowerShell中运行
关于\u环境\u变量的帮助。env不是常规的Windows/PowerShell命令,它必须安装在machineThanks中的其他位置,不幸的是,同事一夜之间重新启动了机器,问题已消失。我将密切关注这种情况再次发生,但感谢您的帮助。非常遗憾,机器昨晚重新启动,自那以后,问题一直没有出现。我更喜欢追根究底,所以很遗憾我无法进一步调查。