簡短描述
描述如何從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 Local Machine 配置單元的 Software 容器中的項目清單。
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 將返回有關該文件的詳細資訊(假設該檔位於當前工作位置)。