about_Locations

簡短描述

描述如何從PowerShell中的工作位置存取專案。

詳細描述

目前的工作位置是命令指向的預設位置。 換句話說,如果您未提供受命令影響之專案或位置的明確路徑,則這是 PowerShell 所使用的位置。

注意

PowerShell 支援每個進程的多個 Runspace。 每個 Runspace 都有自己的 目前目錄。 這與 PowerShell 程式的目前目錄不同: [System.Environment]::CurrentDirectory

例如,您可以將目前的工作位置設定為下列位置:

Set-Location C:\Program Files\PowerShell

因此,除非明確提供其他路徑,否則會從這個位置處理所有命令。

即使磁碟驅動器不是目前磁碟驅動器,PowerShell 仍會維護每個磁碟驅動器的目前工作位置。 這可讓您只參考另一個位置的磁碟驅動器,以存取目前工作位置的專案。 例如,假設您目前的工作位置是 C:\Windows。 現在,假設您使用下列命令將目前的工作位置變更為 HKLM: 磁碟驅動器:

Set-Location HKLM:

雖然您目前的位置現在是登錄磁碟驅動器,但您仍然可以使用C:磁碟驅動器存取目錄中的專案C:\Windows,如下列範例所示:

Get-ChildItem C:

PowerShell 請記住,您目前該磁碟驅動器的工作位置是 Windows 目錄,因此它會從該目錄擷取專案。 如果您執行下列命令,結果會相同:

Get-ChildItem C:\Windows

在 PowerShell 中 Get-Location ,您可以使用 命令來判斷目前的工作位置,而且您可以使用 Set-Location 命令來設定目前的工作位置。 例如,下列命令會將目前的工作位置設定為 Windows 磁碟驅動器的 C: 目錄:

Set-Location C:\Windows

設定目前的工作位置之後,您仍然可以在命令中包含磁碟驅動器名稱(後面接著冒號)來存取來自其他磁碟驅動器的專案,如下列範例所示:

Get-ChildItem HKLM:\software

範例命令會擷取登錄中Hive軟體容器 HKEY_LOCAL_MACHINE 中的項目清單。

PowerShell 也可讓您使用特殊字元來代表目前的工作位置和其父位置。 若要代表目前的工作位置,請使用單一期間。 若要代表目前工作位置的父代,請使用兩個期間。 例如,下列會 System 指定目前工作位置中的子目錄:

Get-ChildItem .\System

如果目前的工作位置是 C:\Windows,此命令會傳回 中 C:\Windows\System所有項目的清單。 不過,如果您使用兩個期間,則會使用目前工作目錄的父目錄,如下列範例所示:

Get-ChildItem ..\"Program Files"

在此情況下,PowerShell 會將這兩個期間視為 C: 磁碟驅動器,因此命令會擷取目錄中的所有專案 C:\Program Files

開頭為反斜杠的路徑 (\) 會識別目前磁碟驅動器根目錄中的路徑。 例如,如果您的目前工作位置是 C:\Program Files\PowerShell,則磁碟驅動器的根目錄為 C:\。 因此,下列命令會列出目錄中的所有專案 C:\Windows

Get-ChildItem \Windows

如果您在提供容器或項目的名稱時,未指定開頭為磁碟驅動器名稱、反斜杠或句點 (\.) 的路徑,則容器或專案會假設位於目前的工作位置。 例如,如果您的目前工作位置是 C:\Windows,下列命令會傳回目錄中的所有專案 C:\Windows\System

Get-ChildItem System

如果您指定檔名而非目錄名稱,PowerShell 會傳回該檔案的詳細數據(假設該檔案位於目前的工作位置)。

另請參閱