Enter your keyword

Caso práctico Enter-PSSession Remote PowerShell

Caso práctico Enter-PSSession Remote PowerShell

Caso práctico Enter-PSSession Remote PowerShell

Como hacer todo más fácil a través de Windows Server 2016

Tomar control desde un Servidor al resto de los servidores a través de PowerShell.

NOTA: la próxima vez les explicaré qué hacer cuando no pertenece al Domain o Workgroup.

Solo les explicare el uso del Enter-PSSession

Desde otro equipo, ejemplo desde nuestro DC vamos a ejecutar el siguiente comando

Primero abrimos una consola de PowerShell

Ejecutamos el siguiente comando:

Enter-PSSession -ComputerName SRV-CORE-CMD

Para salir observemos que antes estábamos en el SRV-CORE-CMD y con exit

Pasamos a estar en el DC01 que es nuestro Domain Controller.

A continuación, con el siguiente comando

Invoke-Command -ComputerName SRV-CORE-CMD -ScriptBlock {Get-Process}

invocar un comando en un servidor remoto, se va a conectar y nos muestra lo que pasa de manera local

Ejemplo Invoke-Command -ComputerName SRV-CORE-CMD -ScriptBlock {Get-Process}

invocar un comando en un servidor remoto, se va a conectar y nos muestra lo que pasa de manera local

Ejemplo Invoke-Command -ComputerName SRV-CORE-CMD -ScriptBlock {Get-Process}

Ejemplo de Utilización de llave que muchas veces escucho que las llaves utilizadas en Powershell te hacen desastres déjenme decirle que no es así.

Un ejemplo fácil:

Filtrado de salida

El cmdlet Where-Object nos sirve para filtrar los datos devueltos por otros cmdlets. Lo podemos encontrar tanto como Where-Object o incluso como “where” o “?”.

El código incluido dentro del “where” se ubica entre paréntesis de tipo llave: “{}” y este código es evaluado para cada objeto que pasa a través del pipeline. El resultado de la expresión puede ser verdadero (true) o falso (false). Si se evalúa “true” el objeto es devuelto, en caso contrario es ignorado.

Por ejemplo, si ejecutamos en Powershell “Get-Service”, este devuelve todos los servicios del equipo. Si solo nos interesan los servicios que tengan la palabra “time” en el nombre podemos filtrar del siguiente modo:

Get-Service | Where {$_.displayname -like “*time*”}

Si traducimos al español la sentencia diríamos:

“Traer servicios donde el nombre a mostrar tenga la palabra time en cualquier parte”.

En este caso también estamos utilizando el operador “like”.

El operador “like” nos sirve para utilizar comodines como el “*”. Si por ejemplo quisiera todo lo que empiece por time utilizaría “time*”, si quisiera todo lo que finalice con time “*time” y en el caso del ejemplo anterior “*time*”.

Del mismo modo podríamos utilizar a la inversa con “notlike”, en este caso por ejemplo la línea anterior:

Get-Service | Where {$_.displayname -notlike “*time*”}

Se traduciría en:

“Traer servicios donde el nombre a mostrar no tenga la palabra time en ninguna parte”.

Nos vemos en la próxima, muchas gracias por tu visita, puedes dejar tus comentarios.. saludos.

Show Buttons
Hide Buttons
Translate »