Tengo una pregunta simple pero también soy un principiante en PowerShell. Creo que tiene que ver con el hecho de que la salida de los comandos ps son objetos y no texto.Filtre la salida de un comando como si fuera texto
Lo que quiero hacer es obtener una lista de los servicios en ejecución que tienen el nombre "sql" en ellos.
Esto es lo que he intentado hasta ahora, pero todos los intentos no devuelve nada:
get-service | where {$_ -match 'sql'}
get-service | where {$_ -like 'sql'}
get-service | select-string sql
Busco a un patrón que me permite tratar a la salida de cada comando de texto de búsqueda.
Hola manojlds, – buckley
Esta fue la respuesta genérica que estaba buscando, así que marqué tu respuesta. Para volver a especifico, así es como creo que filtre la lista para SQL: get-service | out-string | findstr SQL También debería ser posible con select-string, creo. @mjolinor Gracias por aclaraciones. Vengo de objetos C#, así que conozco bien las ventajas de esta estructura rígida. Lo que estaba buscando aquí fue una manera rápida ("scripty"?) De obtener lo que quería en la línea de comando. Estoy de acuerdo en que si esto fuera necesario en un script de producción, deberíamos usar objetos/propiedades, ya que son más fáciles de mantener – buckley
Lo que hay que observar con Out-String es que se trunca a 80 caracteres de forma predeterminada. Normalmente, bla | Out-String -Width 1kb o -Width 10kb para evitar esto. –