如何在C#中向PowerShell对象添加路径?

时间:2018-10-28 19:52:02

标签: c# powershell

在调用下面的GetPathToCmd时,我还希望powerShell考虑一些特殊的目录-c:\scripts(作为参数传递)。有没有一种方法可以将该目录仅添加到powerShell的{​​{1}}(即PATH)中,而不更改整个运行过程的路径变量?

$env:Path

1 个答案:

答案 0 :(得分:0)

您可以更改$ env:Path。但是,当您执行以下操作时...

# Modify current environment path for this session
$Env:Path = "$Env:Path;SomeNewFolderPath"

...然后$ Env:Path更改在会话的整个生命周期中都存在。当您开始新的会话时,它消失了。

但是,您可以即时执行此操作,确保您不会以这种方式破坏原始路径

# Capture the current path
$CurrentPath = $Env:Path

C:\Program Files\Microsoft MPI\Bin\;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;...


# Modify current environment path before entering the code segment
$Env:Path = "$Env:Path;SomeNewFolderPath"


$Env:Path
C:\Program Files\Microsoft MPI\Bin\;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;...;SomeNewFolderPath



# Modify current environment path after leaving the code segment
$Env:Path = $CurrentPath

$Env:Path
C:\Program Files\Microsoft MPI\Bin\;C:\WINDOWS\system32;C:\WINDOWS;C:\WINDOWS\System32\Wbem;...