php打印变量-Powershell环境变量$Env

2023-08-29 0 1,109 百度已收录

首页 » Powershell » Powershell环境变量目录

传统的控制台通常没有像Powershell这样的中间变量系统。 它们都是依赖机器本身的环境变量来运行的。 环境变量对于 powershell 来说变得非常重要,因为它包含操作系统的许多细节。 据悉,powershell中的变量只存在于powershell内部的会话中,一旦powershell关闭,这些变量就会自生自灭。 并且如果环境变量被更新,它将继续保存在操作系统中,尽管其他程序也可以调用它。

读取特殊环境变量

通过环境变量读取Windows操作系统的安装路径和默认应用程序的安装路径。

PS> $env:windir
C:Windows
PS> $env:ProgramFiles
C:Program Files

php打印变量-Powershell环境变量$Env

通过$env:,这会提示powershell忽略基本变量:driver,而是在环境变量env:driver中查找该变量。 为了与其他变量保持一致,powershell环境变量也可以像其他变量一样使用。 例如,您可以将其插入文本中。

PS> "My computer name $env:COMPUTERNAME"
My computer name MYHome-test-01

查找环境变量

Powershell在env:虚拟驱动中保存了所有环境变量的记录,因此可以枚举所有环境变量。 一旦找到环境变量的名称php打印变量,就可以使用 $env:name 来访问它。

PS> ls env:
Name                           Value
----                           -----
ALLUSERSPROFILE                C:ProgramData
APPDATA                        C:Usersv-testHomeAppDataRoaming
CommonProgramFiles             C:Program FilesCommon Files
COMPUTERNAME                   MYHome-test-01
ComSpec                        C:Windowssystem32cmd.exe
FP_NO_HOST_CHECK               NO
HOMEDRIVE                      C:
HOMEPATH                       Usersv-testHome

创建新的环境变量

创建新环境变量的方式与创建其他变量相同,只需指定env:虚拟驱动器即可

PS> $env:TestVar1="This is my environment variable"
PS> $env:TestVar2="Hollow, environment variable"
PS> ls env:Test*
Name                           Value
----                           -----
TestVar1                       This is my environment variable
TestVar2                       Hollow, environment variable

删除和更新环境变量

在powershell中删除和更新环境变量与常规变量相同。 例如删除环境变量中的windir,

PS> del env:windir
PS> $env:windir
PS>

您可以将环境变量 $env:OS 更新为 linuxredhat。

PS> $env:OS
Windows_NT
PS>  $env:OS="Redhat Linux"
PS> $env:OS
Redhat Linux

这样直接操作环境变量会不会不安全? 事实上,这是非常安全的,因为$env:中的环境变量只是机器环境变量的副本。 虽然修改过,但下次重新打开时会恢复。 (.NET模式下更新环境变量除外)

我们可以将受信任的文件夹列表追加到环境变量的末尾php打印变量,这样这些文件下的文件或脚本就可以通过相对路径直接执行,甚至省略扩展名。

PS> md .myscript
    Directory:
Mode                LastWriteTime     Length Name
----                -------------     ------ ----
d----        2011/11/29     18:20            myscript
PS> cd .myscript
PSmyscript> "write-host 'Hollow , Powershell'" > hollow.ps1
PSmyscript> .hollow.ps1
Hollow , Powershell
PSmyscript> cd ..
PS> $env:Path+=";C:PowerShellmyscript"
PS> hollow.ps1
Hollow , Powershell
PS> hollow
Hollow , Powershell

环境变量更新生效

以上对环境变量的操作只会影响当前的powershell会话,并不会在机器上更新。

.NET方法[environment]::SetEnvironmentvariable操作可以立即生效

以下示例为当前用户设置环境变量。 经测试,重新打开后powershell依然存在

PS> [environment]::SetEnvironmentvariable("Path", ";c:powershellscript", "User")
PS> [environment]::GetEnvironmentvariable("Path", "User")
;c:powershellscript

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

悟空资源网 php php打印变量-Powershell环境变量$Env https://www.wkzy.net/game/182858.html

常见问题

相关文章

官方客服团队

为您解决烦忧 - 24小时在线 专业服务