在PowerShell中相当于"cd%programfiles%"?

Gqq*_*big 30 powershell environment-variables

在传统的cmd中,我们cd %programfiles%通常可以用来切换目录C:\Program Files.

在PowerShell中,我们如何通过环境变量转到目录?

Eri*_*ikE 58

原则是:

$Env:variablename
Run Code Online (Sandbox Code Playgroud)

所以你可以试试:

cd $Env:Programfiles
Run Code Online (Sandbox Code Playgroud)

或者暂时将工作目录切换到%Programfiles%\MyApp:

Push-Location -Path "$Env:Programfiles\MyApp"
#
# command execution here
#
Pop-Location
Run Code Online (Sandbox Code Playgroud)

要列出您可以执行的所有环境变量:

Get-ChildItem Env:
Run Code Online (Sandbox Code Playgroud)


dan*_*gph 11

要查看所有环境变量,请执行以下操作:

dir env:
Run Code Online (Sandbox Code Playgroud)

要查看包含"Program"的所有内容,请执行以下操作:

dir env: | ? { $_.Value -match 'Program' }
Run Code Online (Sandbox Code Playgroud)

在PowerShell 3中它更清晰:

dir env: | ? Value -match 'Program'
Run Code Online (Sandbox Code Playgroud)

我们想要的是env:ProgramFiles,我们可以这样做:

cd $env:ProgramFiles
Run Code Online (Sandbox Code Playgroud)