@media screen and (min-width: 580px) { .flotantewhatsapp{ display:none; } }

Compartir por WhatsApp

Curso básico de Powershell: Comandos básicos

Después de varias entradas vamos a ver con más detalle algunos de los comandos básicos que vamos a utilizar cuando usemos PowerShell

Where-Object
Es el principal comando que utilizamos para filtrar los resultados obtenidos por otro cmdlet. Básicamente lo que se hace es comprobar alguna de las propiedades del objeto de entrada y redirigirlo a la salida sólo si cumple la condición indicada.

Hasta la versión 3, cuando se utiliza el Where-Object y tenemos como entrada varios objetos, podríamos decir que los evalúa uno a uno, y en el momento en el que se procesa ese objeto se asigna a la variable $_.

Veamos un ejemplo:

Si queremos obtener los servicios cuyo nombre empieza por “s” podemos hacer los siguiente:

Get-Service
Get-Service

Pero también podemos hacer

Ejemplo básico de Where-Object
Ejemplo básico de Where-Object

y obtenemos el mismo resultado.


O con la nueva nomenclatura de PowerShell 3.0

Nueva sintaxis en PowerShell 3.0
Nueva sintaxis en PowerShell 3.0

Y podemos canalizar distintos filtrados

Varios filtros en serie
Varios filtros en serie

 

Select-Object
Con este cmdlet lo que podemos es seleccionar los campos del objeto u objetos del resultado final que queremos obtener, de forma que no tengamos el objeto con todas sus propiedades sino solo las que nosotros necesitamos. También nos permite obtener un número concreto de objetos, por ejemplo, los 10 primeros de un resultado.

Vamos con los ejemplos

Get-Service
Get-Service

Vemos que nos muestra una cantidad de objetos y unas propiedades concretas

Podemos cambiar las propiedades que se muestran de la siguiente manera

Ejemplo Select-Object
Ejemplo Select-Object

Podemos eliminar resultados repetidos con el parámetro -Unique

Get-Process
Get-Process

Y ahora con el parámetro -Unique

Ejemplo de parámetro -Unique
Ejemplo de parámetro -Unique

También podemos crear propiedades personalizadas para mostrar información a partir de otras propiedades.

Ejemplo de propiedad personalizada
Ejemplo de propiedad personalizada

También tenemos la opción de que si una de las propiedades que mostramos está compuesta por un grupo de objetos, podamos mostrar toda la información con el parámetro

No vemos todos los servicios dependientes
No vemos todos los servicios dependientes

Vemos que la propiedad DependentServices no se muestra completa, al contener varios objetos

Ahora con el parámetro -ExpandProperty podemos ver todo su contenido

Ejemplo con ExpandProperty
Ejemplo con ExpandProperty

 

Sort-Object
Nos permite ordenar un conjunto de objetos según la propiedad indicada. Por defecto los ordena de forma ascendente tanto alfabética como numéricamente. Podemos indicar varias propiedades a partir de las cuales ordenar los objetos

Get-Service
Get-Service

Ahora los podemos ordenar según otra propiedad

Ordenamos los objetos por el estado
Ordenamos los objetos por el estado

Tenemos que tener cuidado con las canalizaciones ya que aquí el orden si que afecta al resultado

El orden de los factores importa
El orden de los factores importa

Group-Object
Nos permite organizar y agrupar los objetos basándonos en una propiedad
El resultado es un nuevo tipo de objeto de tipo Microsoft.PowerShell.Commands.GroupInfo

Veamos un ejemplo:

Get-Service
Get-Service

Comprobamos que los objetos del resultado son de tipo System.ServiceProcess.ServiceController

Get-Member de los servicios
Get-Member de los servicios

Ahora vamos a agrupar el resultado por el estado

Servicios agrupados
Servicios agrupados

Y comprobamos que el resultado es un tipo de objeto distinto

Get-Member del objeto resultante de Group-Object
Get-Member del objeto resultante de Group-Object

También podemos obtener un objeto de tipo HashTable

Agrupando como HashTable
Agrupando como HashTable

Temas

  1. Introducción
  2. Instalación y requerimientos
  3. Ayuda
  4. Ampliando la funcionalidad
  5. Canalización
  6. Operadores
  7. Comandos básicos
  8. Formato de salida
  9. Importar y Exportar datos
  10. Arrays y HashTables
  11. Ejecución de Scripts
  12. Providers
  13. Trabajos
  14. Scripts y funciones
  15. Gestión de Errores

 

 

¿Te ha gustado la entrada SÍGUENOS EN TWITTER O INVITANOS A UN CAFE?

El Blog de Negu

Acerca de Roberto Orayen

Compruebe también

powershell-comandos-para-extraer-hardware-1

Powershell: Comandos para extraer hardware

Powershell: Comandos para extraer hardware Empezamos el año 2024 con un poco de “comandeo”… Hoy …

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

once + 9 =

Uso de cookies

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información.

ACEPTAR
Aviso de cookies
Blog Maquinas Virtuales - El Blog de Negu