about_Locations
簡短描述
描述如何在PowerShell中從工作位置存取專案。
詳細描述
目前的工作位置是命令指向的預設位置。 換句話說,如果您未提供受命令影響之專案或位置的明確路徑,則這是 PowerShell 使用的位置。 在大部分情況下,目前的工作位置是透過PowerShell FileSystem提供者存取的磁碟驅動器,在某些情況下,該磁碟驅動器上的目錄。 例如,您可以將目前的工作位置設定為下列位置:
C:\Program Files\Windows 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 命令來設定目前的工作位置。 例如,下列命令會將目前的工作位置設定為 C: 磁碟驅動器的 Windows 目錄:
Set-Location c:\windows
設定目前的工作位置之後,您仍然可以只藉由在 命令中包含磁碟驅動器名稱 (後面加上冒號) ,來存取其他磁碟驅動器的專案,如下列範例所示:
Get-ChildItem HKLM:\software
此範例命令會擷取登錄中HKEY 本機電腦登錄區之軟體容器中的項目清單。
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 會傳回該檔案的詳細數據, (假設該檔案位於目前的工作位置) 。