The Big Book of PowerShell Gotchas (Spanish)
  • Léame
  • Acerca de este libro
  • Formato a la derecha
  • ¿Dónde está el comando \?
  • PowerShell.exe no es PowerShell
  • Acumulando la salida en una función
  • ForEach vs ForEach vs ForEach
  • Finalización con Tab
  • -Contains y -Like son diferentes
  • No puede tener lo que no se tiene
  • -Filter y la diversidad de valores
  • No todo produce una salida
  • Una página HTML a la vez, por favor
  • Sangriento, Horrible, Puntuación
  • No Concatene Strings
  • $ no forma parte del nombre de la variable
  • Utilizar la canalización (pipeline), no una matriz
  • Backtick, Grave Accent, Escape
  • Comandos de la vieja escuela
  • Una multitud no es un individuo
  • La salida predeterminada de los comandos puede mentir
  • Propiedades vs. Valores
  • Variables Remotas
  • New-Object PSObject vs. PSCustomObject
  • Ejecutando algo como el "usuario actualmente conectado"
  • Comandos que necesitan un perfil de usuario pueden fallar cuando se ejecuta de forma remota
  • Escribiendo en SQL Server
  • Obtener tamaños de carpetas
Powered by GitBook
On this page

-Filter y la diversidad de valores

PreviousNo puede tener lo que no se tieneNextNo todo produce una salida

Last updated 7 years ago

Esta es una de las cosas más difíciles de acostumbrarse en PowerShell:

Aquí vemos tres comandos, cada uno usando un parámetro -Filter. Cada uno de esos filtros es diferente.

  1. Con Get-ChildItem, -Filter acepta los comodines del sistema de archivos como *.

  2. Con Get-WmiObject, -Filter requiere una cadena, y utiliza operadores de estilo de programación (como = para la igualdad).

  3. Con Get-ADUser, -Filter requiere un bloque de script, y acepta operadores de comparación de estilo PowerShell (como -eq para la igualdad)

Esto es lo que pienso cuando se utiliza un parámetro –Filter. PowerShell no está procesando el filtrado. En su lugar, los criterios de filtrado se están transmitiendo a la tecnología subyacente, como el sistema de archivos, o WMI, o al directorio activo. Es esta tecnología la que decide qué tipo de criterios de filtro se van a aceptar. PowerShell es sólo el intermediario. Así que es mejor leer cuidadosamente la ayuda, y tal vez buscar ejemplos, para entender cómo la tecnología subyacente necesita que especifique su filtro.

Sí, sería bueno si PowerShell tradujera para usted (que es realmente lo que hace Get-ADUser - el comando traduce eso en un filtro de LDAP tras bambalinas). Pero, por lo general, no lo hace.

image029.png