Acerca de los caracteres comodín
DESCRIPCIÓN BREVE
Describe cómo usar caracteres comodín en PowerShell.
DESCRIPCIÓN LARGA
Los caracteres comodín representan uno o varios caracteres. Puede usarlos para crear patrones de palabras en comandos. Por ejemplo, para obtener todos los archivos del C:\Techdocs
directorio con una .ppt
extensión de nombre de archivo, escriba:
Get-ChildItem C:\Techdocs\*.ppt
En este caso, el carácter comodín asterisco (*
) representa los caracteres que aparecen antes de la extensión de .ppt
nombre de archivo.
PowerShell admite los siguientes caracteres comodín:
Wildcard (Carácter comodín) | Descripción | Ejemplo | Match | Sin coincidencia |
---|---|---|---|---|
* | Coincidir con cero o más caracteres | a* | aA, ag, Apple | Plátano |
? | Coincidir con un carácter en esa posición | ?N | an, in, on | Corrió |
[ ] | Coincidir con un intervalo de caracteres | [a-l]ook | book, cook, look | Tomó |
[ ] | Coincidencia de caracteres específicos | [bc]ook | book, cook | enlace |
Puede incluir varios caracteres comodín en el mismo patrón de palabras. Por ejemplo, para buscar archivos de texto con nombres que comiencen por las letras a a l, escriba:
Get-ChildItem C:\Techdocs\[a-l]*.txt
Muchos cmdlets aceptan caracteres comodín en valores de parámetro. En el tema de Ayuda de cada cmdlet se describe qué parámetros aceptan caracteres comodín. En el caso de los parámetros que aceptan caracteres comodín, su uso no distingue mayúsculas de minúsculas.
Puede usar caracteres comodín en comandos y bloques de script, como para crear un patrón de palabras que represente los valores de propiedad. Por ejemplo, el siguiente comando obtiene servicios en los que el valor de la propiedad ServiceType incluye Interactive.
Get-Service | Where-Object {$_.ServiceType -Like "*Interactive*"}
En el ejemplo siguiente, la If
instrucción incluye una condición que usa caracteres comodín para buscar valores de propiedad. Si la descripción del punto de restauración incluye PowerShell, el comando agrega el valor de la propiedad CreationTime del punto de restauración a un archivo de registro.
$p = Get-ComputerRestorePoint
foreach ($point in $p) {
if ($point.description -like "*PowerShell*") {
Add-Content -Path C:\TechDocs\RestoreLog.txt "$($point.CreationTime)"
}
}