Sobre curingas
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. Por exemplo, para obter 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.
O PowerShell dá suporte aos seguintes caracteres curinga:
Curinga | Descrição | Exemplo | Corresponder a | Sem correspondência |
---|---|---|---|---|
* | Corresponder a zero ou mais caracteres | a* | aA, ag, Apple | Banana |
? | Corresponder a um caractere nessa posição | ?N | um, em, em | Correu |
[ ] | Corresponder a um intervalo de caracteres | [a-l]ook | book, cook, look | Levou |
[ ] | Corresponder a caracteres específicos | [bc]ook | livro, cozinheira | hook |
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 al, digite:
Get-ChildItem C:\Techdocs\[a-l]*.txt
Muitos cmdlets aceitam caracteres curinga em valores de parâmetro. O tópico 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)"
}
}