Powershell Forms: Distribuye bat's a servidores con psexec

Powershell GUI para ejecutar comandos a equipos remotos con psexec (windows) o plink (linux) o ejecutar scripts powershell.


PASOS:
  1. Selecciona las credenciales que quieras usar del combobox (opcional). La primera vez rellena el campo con algo descriptivo. En el momento de ejecutar el script seleccionado es cuando te pedirá las credenciales y las guardará para la proxima vez. Si dejas el campo vacio usará tus credenciales actuales.
  2. Escribe los nombres de maquina en el campo Computers o clicka el boton de arriba para seleccionar un fichero txt que contenga nombres de maquina.
  3. Elige cualquiera de las opciones pre-deploy:
    • hacer ping a la lista de maquinas primero
    • testear los puertos necesarios primero (por ejemplo psexec necesita 139 y 445, plink el 22...)
    • No hacer nada previamente
  4. Elige el script que quieras ejecutar desde el ScriptRepository
  5. Run!

Esta interfaz permite ejecutar cualquier script a una lista de maquinas. Se ayuda de psexec en caso de windows y plink en caso de linux.

Todos los scripts que se ven en el menu de arbol se encuentran bajo la carpeta ScriptRepository, lo unico que tienes que hacer es copiar ahi tus propios batches y scripts powershell.

A la hora de hacer tus propios scripts powershell solo ten en cuenta que la lista de maquinas rellenará la variable $computername y las credenciales se almacenarán en la variable $creds.
Este sería un ejemplo para reiniciar una lista de maquinas:
restart-computer -computername $computername -credential $creds -force -confirm:$false

No es necesario que cierres y abras el programa para actualizar la lista de scripts que acabas de copiar. Puedes acualizarla haciendo doble click en cualquiera de las pestañas.
Si cambias el contenido de cualquier script tampoco hace falta cerrar y abrir el programa para que se actualice.

He subido algunos de mis scripts y batches como ejemplos.
Fijate que he usado el caracter guion bajo '_' en el nombre de los scripts para crear niveles dentro del menu de arbol para mantenerlos mas organizados.


Descargar desde Github

Comentarios