Aprende Informatica Conmigo

  • Inicio
  • Contenido Anterior
    • VIDEOTUTORIALES
    • Windows Server 2008
    • POWERSHELL

31 mayo, 2009 Por oscar 2 comentarios

Script Powershell – Apagar equipos remotamente

Bueno, como lo prometido es deuda, hoy vamos a escribir nuestro primer script en Powershell.

En este caso vamos a utilizarlo para apagar equipos remotamente.

A continuacion muestro el codigo completo:


#Script: apagarequipos.ps1
#Version: 1.0
#
#Autor: Oscar Abad Folgueira
#Web:   https://www.aprendeinformaticaconmigo.com
#Fecha: 25 de Abril de 2009
#
#Tipo: Powershell
#Funcion: Apagar equipos remotamente.
#
#Parametros: nombre el equipo a apagar.
#Uso: apagarequipos.ps1 equipo
#
#

Param($equipo)         #parametro de entrada (Nombre del equipo a apagar).

(get-wmiobject -class win32_operatingsystem -computername $equipo).win32shutdown(12)


Ahora toca explicar un poco lo que hace el script y como lo hace.

En primer lugar debemos saber, si no lo sabemos ya o nos lo imaginamos, que todo lo que escribimos despues del caracter almoadilla (#) es un comentario. Por consiguiente, si nos fijamos, nuestro script consta de 2 lineas unicamente.

La primera linea efectiva: Param($equipo) la utilizamos para recoger en la variable $equipo el nombre del equipo que hemos tecleado despues de apagarequipos.ps1 y que se corresponde con el equipo que queremos apagar.

Por ejemplo, cuando utilicemos el script, lo haremos de la siguiente forma: apagarequipos.ps1 compras1

Esto lo que hara sera intentar apagar el equipo «compras1» si es que esta encendido, claro. Si no está encendido nos dara un mensaje de error. De todas formas, como este script es solo para que veamos como funciona esto y no nos compliquemos demasiado, no os preocupeis por que lo vamos a mejorar un poco en posteriores artiulos.

La segunda linea efectiva lo que hace es utilizar las clases WMI de Windows. En este caso utilizamos la clase «win32_operatingsystem» la cual, entre otros, dispone de un metodo llamado «win32shutdown» y admite una serie de valores.

Para saber mas sobre este metodo y sobre los valores que admite, podemos visitar esta pagina web.

Para poder probar este script, ya sabeis, y si no lo sabeis os lo comento ahora. Teneis que copiar el codigo que os he puesto arriba y guardarlo en un fichero con extension «ps1«. El resto corre de vuestra cuenta.

No estaria de mas que le echarais un vistazo al apartado de Powershell del Blog para que os aclare algunas cosillas que puede que no las tengamos claras en este momento.

Bueno, creo que con esto tenemos suficiente para empezar con los scripts en Powershell. Ya iremos viendo mas y mas poco a poco.

Venga, a pasarlo bien!!

—–
Oscar Abad
http://www.xulak.com – Consultoría informática

oscar
oscar

Programador WordPress freelance

Publicado en: programacion, scripts powershell, sistemas, tutoriales Etiquetado como: apagar equipos remotamente, aprendeinformaticaconmigo, powershell, script powershell

Acerca de oscar

Programador WordPress freelance

Comentarios

  1. mcmach dice

    13 agosto, 2009 a las 12:57

    Hola Oscar, te quería preguntar (he buscado por ahí pero no he encontrado) una cosilla. En mi empresa trabajamos con el Microsoft System Center Operation Manager 2007 que trae su propia consola de PowerShell. Esta tiene comandos que no están en el PowerShell que aquí se trata, como por ejemplo get-rule. La pregunta es, hay alguna forma de ejecutar desde el powershell que aquí tratamos alguna de los comandos únicos del microsoft system center operation manager???
    Si no entiendes la pregunta dímelo y la intento formular de otra manera.

    Gracias.

    Por cierto, muy bueno tu blog.

    Accede para responder
    • oscar dice

      14 agosto, 2009 a las 6:44

      Si, y eso es lo bueno de Powershell.
      Segun va pasando el tiempo y saliendo nuevas versiones de programas, van haciendo nuevos cmdlets para las diferentes plataformas.
      Por ejemplo, si tu copias un cmdlet de un equipo que lo tenga a otro que no lo tenga y lo ejecutas en este ultimo, deberia de funcionar. Claro que depende de lo que haga el cmdlet.
      No se si me he explicado bien.
      Venga, a pasarlo bien!!

      Accede para responder

Deja una respuesta Cancelar la respuesta

Lo siento, debes estar conectado para publicar un comentario.

Hazte con el tema Divi

Divi WordPress Theme
Libro windows server 2008

Libro certificación Windows Server 2016

Libro certificación Windows Server 2016

Libro Windows Server 2016

Libro Windows Sever 2016
Web Hosting

Últimos artículos

  • PHP función var_dump(): Mostrar el contenido de una variable
  • PHP función unset(): Eliminar variables
  • MySQL LIMIT: Limitar la canidad de filas en una consulta
  • PHP función isset(): Evaluar si una variable está definida
  • PHP función empty(): Comprobar si una variable está vacía
  • MySQL SELECT DISTINCT para encontrar registros con diferente valor en el mismo campo
  • Los mejores libros en español para aprender WordPress

Mis Webs

  • Aprende Informática Conmigo
  • Dinapyme
  • MUSIKP
  • Oscar Abad Folgueira

Proyectos

  • Basabe Baserria
  • Batukada Battuere
  • Bicicletas Sin Pedales
  • Bordalan
  • C.R. Pantano del Rumblar
  • Dinapyme
  • DiverBiblio
  • Egia Ingenieros
  • Hermanos Vivas construcciones
  • Ibartxi – Suministros de Gas y Soldadura
  • LANBASE
  • LS Fotografía
  • Luke and Phil
  • Masajes Mas Sana
  • MUSIKP
  • Oh! Yeah Dev
  • Oscar Abad Folgueira
  • Participación ciudadana Basauri
  • Restaurante Bideko
  • Taldesport
  • Vicente Choya
  • WooCommerce Knowledge2K
  • Inicio
  • Contenido Anterior

Copyright © 2023 · Oscar Abad Folgueira Y DINAPYME· Acceder