共用方式為


關於通配符

簡短描述

描述如何在PowerShell中使用通配符。

長描述

通配符代表一或多個字元。 您可以使用它們,在命令中建立文字模式。 例如,要取得目錄中具有檔案擴展名的所有C:\Techdocs.ppt,請鍵入:

Get-ChildItem C:\Techdocs\*.ppt

在此情況下,星號 (*) 通配符代表擴展名之前 .ppt 出現的任何字元。

PowerShell 支援下列通配符:

通配符 說明 範例 比賽 無匹配項
* 匹配零個或多個字元 一個* aA、ag、蘋果 香蕉
? 匹配該位置的一個字元 ?n an、in、on
[ ] 匹配一系列字元 [a-l]ook book, cook, look 服用
[ ] 匹配特定字元 [bc]ook 預訂, 廚師

您可以在相同的單字模式中包含多個通配符。 例如,若要尋找名稱開頭為字母 al 的文字檔,請輸入:

Get-ChildItem C:\Techdocs\[a-l]*.txt

許多 Cmdlet 都會接受參數值中的通配符。 每個 Cmdlet 的 [說明] 主題描述哪些參數接受通配符。 對於接受通配符的參數,其使用不區分大小寫。

您可以在命令和文稿區塊中使用通配符,例如建立代表屬性值的文字模式。 例如,下列命令會取得 ServiceType 屬性值包含 Interactive 的服務。

Get-Service | Where-Object {$_.ServiceType -Like "*Interactive*"}

在下列範例中 If ,語句包含使用通配符來尋找屬性值的條件。 如果還原點的描述包含PowerShell,命令會將還原點 CreationTime屬性的值新增至記錄檔。

$p = Get-ComputerRestorePoint
foreach ($point in $p) {
  if ($point.description -like "*PowerShell*") {
    Add-Content -Path C:\TechDocs\RestoreLog.txt "$($point.CreationTime)"
  }
}

另請參閱

關於_語言_關鍵字

關於_如果

關於腳本區塊