Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
KRÁTKÝ POPIS
Popisuje, jak používat zástupné znaky v PowerShellu.
DLOUHÝ POPIS
Zástupné znaky představují jeden nebo více znaků. Můžete je použít k vytváření vzorů slov v příkazech. Chcete-li například získat všechny soubory v adresáři C:\Techdocs s příponou .ppt názvu souboru, zadejte:
Get-ChildItem C:\Techdocs\*.ppt
V tomto případě zástupný znak hvězdičky (*) představuje všechny znaky, které se zobrazí před příponou názvu souboru .ppt.
PowerShell podporuje následující zástupné znaky:
| Divoká karta | Popis | Příklad | Utkání | Žádná shoda |
|---|---|---|---|---|
| * | Porovná nula nebo více znaků | a* | aA, ag, jablko | banán |
| ? | Porovná jeden znak na této pozici | ?n | an, v, na | běžel |
| [ ] | Pohledání rozsahu znaků | [a-l]ook | kniha, kuchař, vzhled | bral |
| [ ] | Přiřazení konkrétních znaků | [bc]ook | rezervovat, vařit | hák |
Do stejného vzoru slova můžete zahrnout více zástupných znaků. Pokud chcete například najít textové soubory s názvy, které začínají písmeny až l, zadejte:
Get-ChildItem C:\Techdocs\[a-l]*.txt
Mnoho rutin přijímá zástupné znaky v hodnotách parametrů. Téma nápovědy pro každou rutinu popisuje, které parametry přijímají zástupné znaky. U parametrů, které přijímají zástupné znaky, jejich použití nerozlišuje malá a velká písmena.
Zástupné znaky můžete použít v příkazech a blocích skriptu, například vytvořit vzor slova, který představuje hodnoty vlastností. Například následující příkaz získá služby, ve kterých hodnota vlastnosti ServiceType zahrnuje Interactive.
Get-Service | Where-Object {$_.ServiceType -Like "*Interactive*"}
V následujícím příkladu příkaz If obsahuje podmínku, která k vyhledání hodnot vlastností používá zástupné znaky. Pokud popis bodu obnovení obsahuje PowerShellu, přidá příkaz hodnotu vlastnosti Creation Time bodu obnovení do souboru protokolu.
$p = Get-ComputerRestorePoint
foreach ($point in $p) {
if ($point.description -like "*PowerShell*") {
Add-Content -Path C:\TechDocs\RestoreLog.txt "$($point.CreationTime)"
}
}