我正在尝试通过Powershell为计算机创建环境变量,并在运行时传递变量,但是没有使用变量。 Powershell文件:env_variable.ps1
Param (
[Parameter(Mandatory=$True)] [String] $VAULT_TEXT,
[Parameter(Mandatory=$True)] [String] $VAL
)
[System.Environment]::SetEnvironmentVariable("$VAULT_TEXT","$VAL",[System.EnvironmentVariableTarget]::Machine)
尝试通过Powershell触发:
$vault_text='IAndAAuth'
$val = get-content 'C:\vault\service_acct_pass'
C:\vault\env_variable.ps1 -VAULT_TEXT "$vault_text" -VAL "$val"
结果如下:键:VAULT_TEXT,环境值中的值:VAL。
您能帮我吗?
答案 0 :(得分:1)
您的方法似乎正确,应该可以使用。如果您愿意,可以通过为环境变量创建注册表项来尝试使用旧方法。
用户
New-ItemProperty "HKCU:\Envrionment" -Name "your variable name" -Value "your value"
机器
New-ItemProperty "HKLM:\System\CurrentControlSet\Control\Session Manager\Environment" -Name "your variable name" -Value "your value"