[英]How to set environment variable can access anytime using powershell?
我有格式為12345
文本文件。 我想將該值設置為環境變量,即使關閉Powershell也可以訪問它。 我的期望是,當我想從命令行訪問該環境變量時,我只使用以下命令: echo %ID%
,我將顯示12345
$file = Get-Content .\file.txt
$Variable = "ID"
[Environment]::SetEnvironmentVariable("$Variable", "$file")
我嘗試了這個,但是我仍然無法從命令行使用此命令獲取環境變量: echo %ID%
$file = Get-Content .\file.txt
$Variable = "ID"
[Environment]::SetEnvironmentVariable("$Variable", "$file",1)
[Environment]::SetEnvironmentVariable("$Variable", "$file","User")
[Environment]::SetEnvironmentVariable
的第三個參數允許您選擇環境變量目標。 默認值為當前進程,因此使用兩個參數進行調用只會使該變量可用於當前PowerShell會話。
如果您具有權限,則可以在計算機級別(2)啟用環境變量,可以:
[Environment]::SetEnvironmentVariable("$Variable", "$file",2)
[Environment]::SetEnvironmentVariable("$Variable", "$file","Machine")
或者,僅是用戶級別(1),或者:
[Environment]::SetEnvironmentVariable("$Variable", "$file",1)
[Environment]::SetEnvironmentVariable("$Variable", "$file","User")
HKEY_LOCAL_MACHINE
。 HKEY_CURRENT_USER
https://docs.microsoft.com/zh-cn/dotnet/api/system.environmentvariabletarget?view=netframework-4.7.2
您需要指定目標環境。 默認情況下,該靜態方法僅為當前進程設置$ Var / value對。 您可能希望當前用戶使用該方法,因此請使用下面第一個鏈接中列出的第二種方法,並將目標設置為user
。 這是文檔頁面...
Environment.SetEnvironmentVariable方法(系統)| 微軟文檔
— https://docs.microsoft.com/zh-cn/dotnet/api/system.environment.setenvironmentvariable?view=netframework-4.7.2
EnvironmentVariableTarget枚舉(系統)| 微軟文檔
— https://docs.microsoft.com/zh-cn/dotnet/api/system.environmentvariabletarget?view=netframework-4.7.2
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.