Share via


about_Wildcards

Descrição breve

Descreve como usar caracteres curinga no PowerShell.

Descrição longa

Caracteres curinga representam um ou muitos caracteres. Você pode usá-los para criar padrões de palavras em comandos. Expressões curinga são usadas com o -like operador ou com qualquer parâmetro que aceite caracteres curinga.

Por exemplo, para corresponder todos os arquivos no C:\Techdocs diretório com uma .ppt extensão de nome de arquivo, digite:

Get-ChildItem C:\Techdocs\*.ppt

Nesse caso, o caractere curinga asterisco (*) representa todos os caracteres que aparecem antes da extensão de nome de .ppt arquivo.

Expressões curinga são mais simples do que expressões regulares. Para obter mais informações, consulte about_Regular_Expressions.

O PowerShell dá suporte aos seguintes caracteres curinga:

  • * – Corresponder a zero ou mais caracteres
    • a* corresponde aAa , age Apple
    • a* não corresponde banana
  • ? – Corresponder a um caractere nessa posição
    • ?n corresponde ana , ine on
    • ?n não corresponde ran
  • [ ] – Corresponder a um intervalo de caracteres
    • [a-l]ook corresponde booka , cooke look
    • [a-l]ook não corresponde took
  • [ ] – Corresponder caracteres específicos
    • [bc]ook corresponde book e cook
    • [bc]ook não corresponde hook
  • `* - Corresponder qualquer caractere como um literal (não um caractere curinga)
    • 12`*4 Corresponde 12*4
    • 12`*4 não corresponde 1234

Você pode incluir vários caracteres curinga no mesmo padrão de palavra. Por exemplo, para localizar arquivos de texto com nomes que começam com as letras a a l, digite:

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

Pode haver casos em que você queira corresponder ao caractere literal em vez de tratá-lo como um caractere curinga. Nesses casos, você pode usar o caractere de acento grave (`) para escapar do caractere curinga para que ele seja comparado usando o valor de caractere literal. Por exemplo, '*hello`?*' corresponde a cadeias de caracteres que contêm "olá?".

Muitos cmdlets aceitam caracteres curinga em valores de parâmetro. O tópico da Ajuda para cada cmdlet descreve quais parâmetros aceitam caracteres curinga. Para parâmetros que aceitam caracteres curinga, seu uso não diferencia maiúsculas de minúsculas.

Você pode usar caracteres curinga em comandos e blocos de script, como para criar um padrão de palavra que representa valores de propriedade. Por exemplo, o comando a seguir obtém serviços nos quais o valor da propriedade ServiceType inclui Interativo.

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

No exemplo a seguir, a If instrução inclui uma condição que usa caracteres curinga para localizar valores de propriedade. Se a Descrição do ponto de restauração incluir o PowerShell, o comando adicionará o valor da propriedade CreationTime do ponto de restauração a um arquivo de log.

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

Confira também