Compartir a través de


about_Wildcards

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 palabra en comandos. Las expresiones comodín se usan con el -like operador o con cualquier parámetro que acepte caracteres comodín.

Por ejemplo, para que coincida con 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.

Las expresiones comodín son más sencillas que las expresiones regulares. Para obtener más información, consulte about_Regular_Expressions.

PowerShell admite los siguientes caracteres comodín:

  • * - Coincidir con cero o más caracteres
    • a* coincide con aA, agy Apple
    • a* no coincide banana
  • ? - Para las cadenas, coincide con un carácter en esa posición.
    • ?n coincide con an, iny on
    • ?n no coincide ran
  • ? - Para archivos y directorios, coincida con cero o un carácter en esa posición.
    • ?.txt coincidencias a.txt y b.txt
    • ?.txt no coincide ab.txt
  • [ ] - Coincidencia de un intervalo de caracteres
    • [a-l]ook coincide con book, cooky look
    • [a-l]ook no coincide took
  • [ ] - Coincidencia de caracteres específicos
    • [bc]ook coincidencias book y cook
    • [bc]ook no coincide hook
  • `* - Coincide con cualquier carácter como literal (no comodín)
    • 12`*4 coincide con 12*4
    • 12`*4 no coincide 1234

Puede incluir varios caracteres comodín en el mismo patrón de palabras. Por ejemplo, para buscar archivos de texto con nombres que comiencen con las letras a a la l, escriba:

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

Nota:

La coincidencia de caracteres comodín para los elementos del sistema de archivos funciona de forma diferente a la de las cadenas. Para obtener más información, vea la sección Comentarios del método DirectoryInfo.GetFiles(String, EnumerationOptions).

Puede haber casos en los que quiera que coincida con el carácter literal en lugar de tratarlo como carácter comodín. En esos casos, puede usar el carácter de retroceso (`) para escapar el carácter comodín para que se compare con el valor de carácter literal. Por ejemplo, '*hello`?*' coincide con cadenas que contienen "hello?".

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. Para 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 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)"
  }
}

Consulte también