当前位置:网站首页 > 更多 > 玩电脑 > 正文

[玩转系统] PowerShell设置环境变量|了解如何使用示例?

作者:精品下载站 日期:2024-12-14 04:58:36 浏览:14 分类:玩电脑

PowerShell设置环境变量|了解如何使用示例?


[玩转系统] PowerShell设置环境变量|了解如何使用示例?

PowerShell 设置环境变量简介。

PowerShell 环境变量存储 Windows 操作系统信息,例如安装的操作系统路径、系统驱动器、用户配置文件路径、处理器数量等。它们可以由其他程序或子父进程使用,因为它们更容易工作。使用 PowerShell 设置环境变量是一种简单的方法,为此,我们可以使用简单的变量附加方法、.Net 方法或 Set-Item cmdlet。

语法

以下是设置环境变量的方法。

通过添加/追加变量

$Env:<variable-name> = "<new-value>"

上面的命令语法创建一个具有指定值的新环境变量。要附加变量,请使用 (+) 符号。

$Env:<variable-name> += "<new-value>"

使用 Set-Item cmdlet

下面的命令,语法设置现有的变量名称。我们还可以创建一个新变量,而无需在 Value 参数中提供现有变量名称。

Set-Item -Path Env:<variable-name> -Value ($Env:<variable-name> + ";<new-value>")

使用设置内容方法

在此方法中,我们可以通过提供环境变量的路径或先将位置设置为环境路径然后直接更改变量来直接使用此cmdlet。

Set-Content -Path env:<variable-name> -Value "ValueName"

使用.Net类方法

[Environment]::SetEnvironmentVariable(String, String)

上述命令创建、修改或删除当前进程中存储的环境变量。

[Environment]::SetEnvironmentVariable(String, String,EnvironmentVariableTarget)

上述命令创建、修改或删除当前进程或 Windows 操作系统注册表项中存储的环境变量。

环境变量在 Windows 中如何工作?

环境变量存储在名为 Env 的变量中,可以使用 Get-ChildItem(别名:dir)访问它以获取存储在该变量中的所有值。例如,

Get-ChildItem Env:

输出:

[玩转系统] PowerShell设置环境变量|了解如何使用示例?

如果您注意到在上面的命令中,环境变量以 (:) 符号结尾,它表示驱动器符号,但 Env: 是特定驱动器,您可以使用 Get-PSDrive 获取当前会话中关联的所有驱动器命令。

价值

Get-PSDrive

[玩转系统] PowerShell设置环境变量|了解如何使用示例?

您可以注意到 Env 出现在名称中,因此我们可以使用 Drive 符号和 Env: 值与注册表值类似来访问它。要检查当前会话中连接的所有驱动器,请使用 Get-PSProvider 命令。

Get-PSProvider

输出:

[玩转系统] PowerShell设置环境变量|了解如何使用示例?

当我们设置环境变量时,我们需要使用 Env: 符号通过 Syntax 的上述方法来访问该特定变量。

要在 Windows 操作系统上永久设置环境变量,您需要使用计算机属性 -> 高级系统设置 -> 高级选项卡 -> 环境变量。您可以在用户或机器范围内添加或编辑现有的环境变量,然后Windows将此变量写入注册表中以进行永久更改,即使Windows重新启动后它仍然存在。

同样,您可以在 PowerShell 用户配置文件中设置环境变量以使其持久化。

PowerShell 设置环境变量的示例。

以下是下面提到的示例

示例 #1 - 附加变量方法。

在此方法中,我们将现有变量附加到环境变量列表中。例如,

我们需要向 PSModulePath 环境变量添加另一个路径。现有路径如下所示。

dir Env:\PSModulePath

输出:

[玩转系统] PowerShell设置环境变量|了解如何使用示例?

我们可以使用 split 方法在控制台中正确获取路径,

(dir Env:\PSModulePath).value -split ';'

输出:

[玩转系统] PowerShell设置环境变量|了解如何使用示例?

要添加新路径,我们只需附加变量即可。

$env:PSModulePath += ";c:\temp"

当您检查 PSModulePath 的变量时,它应该显示 C:\temp。

$env:PSModulePath -split ';'

输出:

[玩转系统] PowerShell设置环境变量|了解如何使用示例?

这只是临时添加;重新启动计算机后,上面添加的路径就会消失。

要设置新变量,可以直接使用变量名称和新值,如语法部分所示。

$env:AZSubscription = 'Visual Studio Subscription'

输出:

[玩转系统] PowerShell设置环境变量|了解如何使用示例?

上述命令将添加名为 AZSubscription 的新环境变量,并将其值设置为“Visual Studio Subscription”。

示例 #2 - 使用 Set-Item cmdlet。

我们还可以使用Set-Item命令来设置环境变量值。例如,要将值附加到上述 AZSubscription 环境变量中,我们可以使用以下命令。

Set-Item -Path Env:\AZSubscription -Value ($env:AZSubscription + ";AutomationLab")

输出:

[玩转系统] PowerShell设置环境变量|了解如何使用示例?

要使用 Set-Item 创建新的环境值,我们可以直接提供新路径和新值。

Set-Item -Path Env:\AZResourceGroup -Value 'AutomationRG'

输出:

[玩转系统] PowerShell设置环境变量|了解如何使用示例?

示例 #3 - Set-Content cmdlet

我们可以使用以下命令使用 Set-Content cmdlet 将路径附加到环境变量中。在这里,我们提供现有的环境变量以附加到 Value 参数中。

Set-Content -Path Env:\AZResourceGroup -Value ($Env:AZResourceGroup + ";AutomationRG2")

输出:

[玩转系统] PowerShell设置环境变量|了解如何使用示例?

同样,要使用 Set-Content cmdlet 添加新的环境变量,我们可以直接在 -Path 参数中使用新变量名称,并在 -Value 参数中使用它的值。

Set-Content -Path Env:\AZResourceGroup -Value 'NewAutomationRG'

输出:

[玩转系统] PowerShell设置环境变量|了解如何使用示例?

如果我们使用现有变量而不在 -Value 参数中附加值,它将清除旧值并设置新值,如上面的示例所示。

示例 #4 - 使用 .Net 类方法

在此方法中,我们使用名为 [System.Environment] 的 PowerShell .Net 类来设置环境变量的值或创建新值。

首先,我们将为环境设置新值。

[System.Environment]::SetEnvironmentVariable('AZResourceGroup','Automationtest')

输出:

[玩转系统] PowerShell设置环境变量|了解如何使用示例?

我们还可以使用别名[Environmet]代替[System.Environment]。要使用此方法附加新值,我们将使用语法部分中提到的以下语法。

[Environment]::SetEnvironmentVariable(String, String,EnvironmentVariableTarget)
$path = $env:AZResourceGroup + ";AutomationTest2"
[Environment]::SetEnvironmentVariable('AZresourceGroup',$path)

输出:

[玩转系统] PowerShell设置环境变量|了解如何使用示例?

结论 - PowerShell 设置环境变量

环境变量在检索有关操作系统、硬件和应用程序的详细信息方面非常强大。一些编程语言(例如 Java、.NET)使用环境变量,以便应用程序直接检索数据并使用它们。他们还可以创建一个环境变量以方便使用。

您需要 登录账户 后才能发表评论

取消回复欢迎 发表评论:

关灯