Share via


about_Wildcards

Korte beschrijving

Beschrijft hoe u jokertekens gebruikt in PowerShell.

Lange beschrijving

Jokertekens vertegenwoordigen een of meer tekens. U kunt ze gebruiken om woordpatronen te maken in opdrachten. Jokertekenexpressies worden gebruikt met de -like operator of met een parameter die jokertekens accepteert.

Als u bijvoorbeeld alle bestanden in de C:\Techdocs map wilt vergelijken met een .ppt bestandsnaamextensie, typt u:

Get-ChildItem C:\Techdocs\*.ppt

In dit geval vertegenwoordigt het jokerteken sterretje (*) alle tekens die vóór de .ppt bestandsnaamextensie worden weergegeven.

Expressies met jokertekens zijn eenvoudiger dan reguliere expressies. Zie about_Regular_Expressions voor meer informatie.

PowerShell ondersteunt de volgende jokertekens:

Wildcard Beschrijving Voorbeeld Match Geen overeenkomst
* Overeenkomen met nul of meer tekens a* aA, ag, Apple Banaan
? Eén teken in die positie vinden ?n an, in, on Liep
[ ] Overeenkomen met een reeks tekens [a-l\]ook boek, kok, kijk Nam
[ ] Overeenkomen met specifieke tekens [bc]ook boek, kok Haak
`* Een willekeurig teken vergelijken als een letterlijke teken (geen jokerteken) 12`*4 12*4 1234

U kunt meerdere jokertekens opnemen in hetzelfde woordpatroon. Als u bijvoorbeeld tekstbestanden wilt zoeken met namen die beginnen met de letters a tot en met l, typt u:

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

Er kunnen gevallen zijn waarin u het letterlijke teken wilt vergelijken in plaats van het te behandelen als een jokerteken. In die gevallen kunt u de backtick (`) gebruiken om het jokerteken te laten ontsnappen, zodat het wordt vergeleken met behulp van de letterlijke tekenwaarde. Komt bijvoorbeeld '*hello`?*' overeen met tekenreeksen die 'hallo?' bevatten.

Veel cmdlets accepteren jokertekens in parameterwaarden. In het Help-onderwerp voor elke cmdlet wordt beschreven welke parameters jokertekens accepteren. Voor parameters die jokertekens accepteren, is het gebruik ervan niet hoofdlettergevoelig.

U kunt jokertekens gebruiken in opdrachten en scriptblokken, bijvoorbeeld om een woordpatroon te maken dat eigenschapswaarden vertegenwoordigt. Met de volgende opdracht worden bijvoorbeeld services opgehaald waarin de eigenschapswaarde ServiceTypeInteractive bevat.

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

In het volgende voorbeeld bevat de If instructie een voorwaarde die jokertekens gebruikt om eigenschapswaarden te vinden. Als de beschrijving van het herstelpunt PowerShell bevat, voegt de opdracht de waarde van de eigenschap CreationTime van het herstelpunt toe aan een logboekbestand.

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

Zie ook