共用方式為


管理 PowerShell 磁碟驅動器

此範例僅適用於 Windows 平臺。

PowerShell 磁碟驅動器是資料存放區位置,您可以像 PowerShell 中的檔案系統磁碟驅動器一樣存取。 PowerShell 提供者會為您建立一些磁碟驅動器,例如文件系統磁碟驅動器 (包括 C:D:HKLM:)、登錄磁碟驅動器和HKCU:憑證磁碟驅動器 (Cert:),而且您可以建立自己的 PowerShell 磁碟驅動器。 這些磁碟驅動器很有用,但只能在PowerShell中使用。 您無法使用其他 Windows 工具存取它們,例如 檔案總管 或 Cmd.exe

PowerShell 會針對使用 PowerShell 磁碟驅動器的命令使用名詞 PSDrive。 如需 PowerShell 工作階段中的 PowerShell 磁碟驅動器清單,請使用 Get-PSDrive Cmdlet。

Get-PSDrive
Name       Provider      Root                                   CurrentLocation
----       --------      ----                                   ---------------
A          FileSystem    A:\
Alias      Alias
C          FileSystem    C:\                                 ...And Settings\me
cert       Certificate   \
D          FileSystem    D:\
Env        Environment
Function   Function
HKCU       Registry      HKEY_CURRENT_USER
HKLM       Registry      HKEY_LOCAL_MACHINE
Variable   Variable

雖然顯示器中的磁碟驅動器會隨著您系統上的磁碟驅動器而有所不同,但您的磁碟驅動器看起來應該類似上述命令的 Get-PSDrive 輸出。

檔系統磁碟驅動器是PowerShell磁碟驅動器的子集。 您可以透過 [提供者] 資料行中的 FileSystem 專案來識別檔案系統磁碟驅動器。 PowerShell FileSystem 提供者支援 PowerShell 中的文件系統磁碟驅動器。

若要查看 Cmdlet 的Get-PSDrive語法,請使用 Syntax 參數輸入Get-Command命令

Get-Command -Name Get-PSDrive -Syntax
Get-PSDrive [[-Name] <String[]>] [-Scope <String>] [-PSProvider <String[]>] [-V
erbose] [-Debug] [-ErrorAction <ActionPreference>] [-ErrorVariable <String>] [-
OutVariable <String>] [-OutBuffer <Int32>]

PSProvider 參數可讓您只顯示特定提供者支援的 PowerShell 磁碟驅動器。 例如,若要只顯示PowerShell FileSystem提供者支援的PowerShell磁碟驅動器,請使用 PSProvider 參數和 FileSystem 值輸入Get-PSDrive命令

Get-PSDrive -PSProvider FileSystem
Name       Provider      Root                                   CurrentLocation
----       --------      ----                                   ---------------
A          FileSystem    A:\
C          FileSystem    C:\                           ...nd Settings\PowerUser
D          FileSystem    D:\

若要檢視代表登錄區的PowerShell磁碟驅動器,請使用 PSProvider 參數,只顯示PowerShell 登錄提供者支援的PowerShell磁碟驅動器:

Get-PSDrive -PSProvider Registry
Name       Provider      Root                                   CurrentLocation
----       --------      ----                                   ---------------
HKCU       Registry      HKEY_CURRENT_USER
HKLM       Registry      HKEY_LOCAL_MACHINE

您也可以搭配 PowerShell 磁碟驅動器使用標準位置 Cmdlet:

Set-Location HKLM:\SOFTWARE
Push-Location .\Microsoft
Get-Location
Path
----
HKLM:\SOFTWARE\Microsoft

新增 PowerShell 磁碟驅動器

您可以使用 命令來新增自己的 PowerShell 磁碟驅動器 New-PSDrive 。 若要取得命令的New-PSDrive語法,請使用 Syntax 參數輸入 Get-Command 命令

Get-Command -Name New-PSDrive -Syntax
New-[-Description <String>] [-Scope <String>] [-Credential <PSCredential>] [-Verbose] [-Debug ]
[-ErrorAction <ActionPreference>] [-ErrorVariable <String>] [-OutVariable <St ring>]
[-OutBuffer <Int32>] [-WhatIf] [-Confirm]

若要建立新的 PowerShell 磁碟驅動器,您必須提供三個參數:

  • 磁碟驅動器名稱(您可以使用任何有效的 PowerShell 名稱)
  • PSProvider - 用於 FileSystem 檔案系統位置和 Registry 登錄位置
  • 根目錄,也就是新磁碟驅動器根的路徑

例如,您可以建立名為 Office 的磁碟驅動器,該磁碟驅動器會對應至計算機上包含Microsoft Office 應用程式資料刪除的資料夾,例如 C:\Program Files\MicrosoftOffice\OFFICE11。 若要建立磁碟驅動器,請輸入下列命令:

New-PSDrive -Name Office -PSProvider FileSystem -Root "C:\Program Files\Microsoft Office\OFFICE11"
Name       Provider      Root                                   CurrentLocation
----       --------      ----                                   ---------------
Office     FileSystem    C:\Program Files\Microsoft Offic...

注意

一般而言,路徑不會區分大小寫。

PowerShell 磁碟驅動器是使用其名稱後面接著冒號 (:) 來存取。

PowerShell 磁碟驅動器可讓許多工作更簡單。 例如,Windows 登錄中一些最重要的機碼有極長的路徑,使得它們難以存取且難以記住。 重要組態信息位於 底下 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion。 若要檢視和變更 CurrentVersion 登錄機碼中的專案,您可以輸入下列命令來建立根目錄在該機碼中的 PowerShell 磁碟驅動器:

New-PSDrive -Name cvkey -PSProvider Registry -Root HKLM\Software\Microsoft\Windows\CurrentVersion
Name       Provider      Root                                   CurrentLocation
----       --------      ----                                   ---------------
cvkey      Registry      HKLM\Software\Microsoft\Windows\...

然後,您可以將位置變更為 cvkey:磁碟驅動器, 就像任何其他磁碟驅動器一樣:

cd cvkey:

or:

Set-Location cvkey: -PassThru
Path
----
cvkey:\

Cmdlet New-PSDrive 只會將新的磁碟驅動器新增至目前的 PowerShell 工作階段。 如果您關閉PowerShell視窗,新磁碟驅動器就會遺失。 若要儲存PowerShell磁碟驅動器,請使用 Export-Console Cmdlet 匯出目前的 PowerShell 會話,然後使用 PowerShell.exe PSConsoleFile 參數匯入它。 或者,將新的磁碟驅動器新增至您的 Windows PowerShell 配置檔。

刪除 PowerShell 磁碟驅動器

您可以使用 Cmdlet 從 PowerShell Remove-PSDrive 刪除磁碟驅動器。 例如,如果您新增 PowerShell Office: 磁碟驅動器,如主題所示 New-PSDrive ,您可以輸入下列命令來刪除它:

Remove-PSDrive -Name Office

若要刪除 cvkey: PowerShell 磁碟驅動器,請使用下列命令:

Remove-PSDrive -Name cvkey

不過,您無法在磁碟驅動器中刪除它。 例如:

cd office:
Remove-PSDrive -Name office
Remove-PSDrive : Cannot remove drive 'Office' because it is in use.
At line:1 char:15
+ remove-psdrive  <<<< -name office

在 PowerShell 外部新增和移除磁碟驅動器

PowerShell 會偵測 Windows 中新增或移除的文件系統磁碟驅動器,包括:

  • 已對應的網路驅動器機
  • 連接的 USB 磁碟驅動器
  • 使用 net use 命令或從 Windows 腳本主機 (WSH) 文稿中刪除的磁碟驅動器