“。”之间有什么区别?和PowerShell中的[System.ENVIRONMENT] :: CurrentDirectory?

时间:2012-05-25 15:05:43

标签: powershell filesystems

PM> $path = "."
PM> Get-ChildItem $path -filter '.nuget'


    Directory: C:\Users\david\Documents\Visual Studio 2010\Projects\...


Mode                LastWriteTime     Length Name                                                                                                                                                                
----                -------------     ------ ----                                                                                                                                                                
d----        25.05.2012     16:20            .nuget                                                                                                                                                              


PM> $cwd = [System.ENVIRONMENT]::CurrentDirectory
PM> $cwd
C:\Windows\system32
PM> Get-ChildItem $cwd -filter '.nuget'
PM> Get-ChildItem $cwd -filter 'adsnt.dll'


    Directory: C:\Windows\system32


Mode                LastWriteTime     Length Name                                                                                                                                                                
----                -------------     ------ ----                                                                                                                                                                
-a---        14.07.2009     03:14     260608 adsnt.dll                                                                                                                                                           


PM> [System.IO.PATH]::GetFullPath(".")
C:\Windows\system32
PM>

1 个答案:

答案 0 :(得分:7)

[System.Environment]::CurrentDirectory返回PowerShell 进程的工作目录。要获取控制台会话的工作目录,请使用Get-Location cmdlet(或pwd,$ pwd)。

请注意,此“工作目录”也可以是注册表中的位置或任何其他位置提供商。