共用方式為


about_Variable_Provider

提供者名稱

變數

磁碟機

Variable:

功能

ShouldProcess

簡短描述

提供 PowerShell 變數及其值的存取權。

詳細描述

PowerShell 變數 提供者可讓您在目前的控制台中取得、新增、變更、清除和刪除 PowerShell 變數。

PowerShell 變數 提供者支援 PowerShell 所建立的變數,包括自動變數、喜好設定變數,以及您建立的變數。

變數磁碟驅動器是只包含變數物件的一般命名空間。 變數沒有任何子項目。

變數提供者支援本文涵蓋的下列 Cmdlet。

PowerShell 也包含一組專為檢視和變更變數而設計的 Cmdlet。 當您使用 變數 Cmdlet 時,您不需要在名稱中指定 Variable: 磁碟驅動器。 本文未涵蓋使用 變數 Cmdlet。

注意

您也可以使用PowerShell表達式剖析器來建立、檢視和變更變數的值,而不使用 Cmdlet。 直接使用變數時,請使用貨幣符號 ($) 將名稱識別為變數,而指派運算符 (=) 來建立和變更其值。 例如, $p = Get-Process 建立 p 變數,並將命令的結果 Get-Process 儲存在其中。

此提供者公開的類型

變數可以是數種不同類型的其中一種。 大部分的變數都會是 類別的 PSVariable 實例。 其他變數及其類型如下所列。

  • 變數 ? 是 類別的 QuestionMarkVariable 實例。
  • 變數 null 是 類別的 NullVariable 實例。
  • 最大計數變數是 類別的 SessionStateCapacityVariable 實例。
  • LocalVariable 實例包含目前執行的相關信息,例如:
    • MyInvocation
    • PSCommandPath
    • PSScriptRoot
    • PSBoundParameters
    • args
    • input

變數提供者會在磁碟驅動器中Variable:公開其數據存放區。 若要使用變數,您可以將位置變更為 Variable: 磁碟驅動器 (Set-Location Variable:) ,也可以從任何其他 PowerShell 磁碟驅動器工作。 若要從另一個位置參考變數,請使用路徑中的磁碟驅動器名稱 (Variable:) 。

Set-Location Variable:

若要返回檔案系統磁碟機,請輸入磁碟機名稱。 例如,輸入:

Set-Location C:

您也可以從任何其他 PowerShell 磁碟驅動器使用 變數 提供者。 若要從另一個位置參考變數,請使用路徑中的磁碟驅動器名稱 Variable:

注意

PowerShell 會使用別名,讓您熟悉使用提供者路徑。 和 之類的dirls命令現在是 Get-ChildItem 的別名,cdSet-Location 的別名。 和 pwdGet-Location 的別名。

顯示變數的值

取得目前會話中的所有變數

此命令會取得目前工作階段中所有變數及其值的清單。 您可以從任何 PowerShell 磁碟驅動器使用此命令。

Get-ChildItem -Path Variable:

使用其提供者路徑取得變數

此命令會使用貨幣符號前面加上貨幣符號的提供者路徑來擷取變數值 ($) 。 這與以貨幣符號 () $ 為變數名稱前置的效果相同。

$variable:home

使用通配符取得變數

此命令會取得名稱以 "max" 開頭的變數。 您可以從任何 PowerShell 磁碟驅動器使用此命令。

Get-ChildItem -Path Variable:max*

取得的值? 變動

此命令會使用 -LiteralPathGet-ChildItem 的 參數,從磁碟驅動器內Variable:取得變數的值??是路徑中的通配符,但Get-ChildItem不會嘗試解析 參數值-LiteralPath中的任何通配符。

Get-ChildItem -Literalpath ?

取得 ReadOnly 和常數變數

此命令會取得具有 其 Options 屬性之 或 Constant 值的ReadOnly變數。

Get-ChildItem -Path Variable: | Where-Object {
   $_.options -Match "Constant" `
   -or $_.options -Match "ReadOnly"
 } | Format-List -Property name, value, options

建立變數

Create 新的變數

此命令會 services 建立 變數,並將命令的結果 Get-Service 儲存在其中。 由於目前位置位於磁碟驅動器中 Variable: ,所以 參數的值 -Path 是點 () . ,代表目前的位置。

命令周圍的 Get-Service 括號可確保在建立變數之前先執行命令。 如果沒有括號,新變數的值就是 "Get-Service" 字串。

New-Item -Path . -Name services -Value (Get-Service)

使用絕對路徑 Create 變數

此命令會 services 建立變數,並將命令的結果 Get-Service 儲存在其中。

New-Item -Path Variable:services -Value Get-Service

若要建立不含值的變數,請省略指派運算子。

變更變數

重新命名變數

這個指令會 Rename-Item 使用 Cmdlet 將變數的名稱 a 變更為 processes

Rename-Item -Path Variable:a -NewName processes

變更變數的值

此命令會 Set-Item 使用 Cmdlet 將變數的值 ErrorActionPreference 變更為 「Stop」。。

Set-Item -Path Variable:ErrorActionPreference -Value Stop

複製變數

這個指令會Copy-Item使用 Cmdlet 將變數old_processes複製到 processes 。 這會建立名為 old_processes 的新變數,其值與 processes 變數相同。

Copy-Item -Path Variable:processes -Destination Variable:old_processes

刪除變數

此命令會 serv 從目前的工作階段中刪除變數。 您可以在任何 PowerShell 磁碟驅動器中使用此命令。

Remove-Variable -Path Variable:serv

使用 -Force 參數刪除變數

此命令會刪除目前會話中的所有變數,但 Options 屬性的值 Constant為的變數除外。 -Force如果沒有 參數,此命令就不會刪除Options屬性值為的ReadOnly變數。

Remove-Item Variable:* -Force

將變數的值設定為NULL

此命令會 Clear-Item 使用 Cmdlet 將變數的值 processes 變更為 NULL。

Clear-Item -Path Variable:processes

使用管線

提供者 Cmdlet 接受管線輸入。 您可以使用管線來簡化工作,方法是將提供者數據從一個 Cmdlet 傳送至另一個提供者 Cmdlet。 若要深入瞭解如何搭配提供者 Cmdlet 使用管線,請參閱本文中提供的 Cmdlet 參考。

取得說明

從 Windows PowerShell 3.0 開始,您可以取得提供者 Cmdlet 的自訂說明主題,這些主題說明這些 Cmdlet 在檔案系統磁碟機中的行為方式。

若要取得針對文件系統磁碟驅動器自定義的說明主題,請在檔案系統磁碟驅動器中執行 Get-Help 命令,或使用 -PathGet-Help 參數來指定檔案系統磁碟驅動器。

Get-Help Get-ChildItem
Get-Help Get-ChildItem -Path variable:

另請參閱