微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在powershell或cmd中读取环境variables会产生不同的结果

在Windows 7环境variables的问题上我一直困惑。

我们有一个jenkins服务器,它无法在%HOME%环境variables中findSSH密钥,因为它想访问path:

/c/users/jenkins

但是,如果我使用

echo %HOME%

一个正常的命令提示符窗口作为我jenkins用户那么结果是

在Windows中是否有任何表示“C: Documents and Settings”文件夹或C: Users文件夹的环境variables?

在Windows上相当于$ _SERVER

os.getenv返回None而不是正确的值

批处理string操作进度条

在Windows上从浏览器运行batch file,但不inheritance浏览器的环境variables

C:usersjenkins

但是,如果我在Windows PowerShell中使用env命令,我也会得到

/c/user/jenkins

在从系统属性 – 高级标记 – >环境可访问的正常GUI中,我得到以下内容

C:usersjenkins

我试图设置它们,但问题依然存在。 只要jenkins获得与PowerShell相同的输出

我的问题是我如何设置他们回来? (不是说CMD和Windows系统认为他们设置错了)如何访问相同的环境variables给我不同的输出? 有谁知道这可能发生的一种方式? 有谁知道他们在哪里存储,所以我可以手动编辑他们存储的位置?

提前致谢。

/ usr / bin / env如何在Linux shebang行中工作?

读取行时,awk $行并写入variables

孩子的过程是否会影响父母过程的环境?

如何隐藏跨多个文件可见的全局variables?

以环境variables作为参数

正如@Luis的评论中提到的那样, env命令不是Powershell的一部分。 它可能由您安装的一些其他实用程序提供,旨在模拟Linux env命令 。

要在Powershell中引用环境变量,请使用$env:<variable-name>语法或环境提供程序 – Get-Content env:<variable-name> 。

要设置环境变量,可以使用$env:<variable-name> = "<variable-value>"

有关更多信息,请尝试在PowerShell中运行help about_Environment_Variables 。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐