¿Cómo automatizar tareas con PowerShell?
Si es administrador de TI o un nerd de la tecnología, conoce la importancia de la automatización. Una de las mejores herramientas de automatización para usuarios de Windows es Microsoft PowerShell. No solo eso, Microsoft proporciona varias herramientas para ayudarlo con sus necesidades de automatización, por lo que no es necesario instalar ninguna aplicación de terceros. Esta guía le mostrará cómo automatizar tareas con PowerShell.
¿Qué es un script de PowerShell?
Si tiene experiencia en el uso de PowerShell, probablemente ya haya utilizado comandos para configurar su sistema operativo. Un script es una colección de esos comandos en un archivo .ps1. Un archivo .ps1 contiene un script ejecutado por PowerShell, como el comando básico Get-Help. Si bien es posible que no valga la pena guardar comandos simples como Get-Help en un archivo .ps1, comandos más complejos como Get-Date -DisplayHint Date deben escribirse en un archivo de script para ahorrar tiempo. Exploraremos comandos más complejos que vale la pena guardar en archivos .ps1 más adelante.
Cómo automatizar tareas con PowerShell
PowerShell no es sólo una aplicación, es un lenguaje de programación basado en .Net CLR que automatiza las tareas de TI. Tiene compatibilidad con versiones anteriores de CMD y puede automatizar tareas simples o complejas. Debido a su naturaleza universal, está disponible en clientes y servidores Windows, y en entornos macOS, Linux y Cloud, PowerShell es una herramienta atractiva utilizada por la mayoría de los profesionales de TI para automatizar sus tareas diarias.
Para automatizar tareas en PowerShell, solo debemos seguir el siguiente procedimiento.
- Configure la política de ejecución en PowerShell para permitir la ejecución de scripts
- Crear una secuencia de comandos de PowerShell
- Ejecute y pruebe el script de PowerShell
- Programe el script usando el Programador de tareas
Hablemos de ellos en detalle.
1. Configure la política de ejecución en PowerShell para permitir la ejecución de scripts
De forma predeterminada, Windows restringe al usuario la ejecución de un script en PowerShell con la ayuda de una Política de ejecución. Sin embargo, se puede cambiar con bastante facilidad ejecutando un comando.
Para verificar la política de ejecución, ejecute el siguiente comando en el modo elevado de PowerShell.
Get-ExecutionPolicySi dice 'AllSigned', todos los scripts y archivos de configuración están firmados por un editor confiable, incluidos los scripts escritos en la computadora local.
Para cambiar la política de ejecución, ejecute el siguiente comando.
set-executionpolicy unrestrictedO
set-executionpolicy remotesignedEsto le permitirá ejecutar scripts de PowerShell.
2. Cree una secuencia de comandos de PowerShell
Explorar el ámbito de los scripts de PowerShell requiere un artículo propio, pero aquí le enseñaremos cómo crear un script de PowerShell básico y ejecutarlo.
# Get all computer properties
$systemInfo = Get-ComputerInfo
$systemInfo
# Get specific version properties
$versionInfo = Get-ComputerInfo -Property "*version"
$versionInfoEste script recupera todas las propiedades del sistema y del sistema operativo, incluidas las propiedades relacionadas con la versión, como la versión de Windows y la versión del BIOS.
Aunque existen varias herramientas para escribir un script de PowerShell, usaremos el Bloc de notas que viene preinstalado en su computadora.
Entonces, abra Bloc de notas, pegue el script proporcionado anteriormente, vaya a Archivo > Guardar como, asigne un nombre con la extensión .ps1 , cambie Guarde como escriba en Todos los archivos y presione Enter. Si su archivo no se guarda, cambie la ubicación a Escritorio y luego inténtelo.
Nota: Le recomendamos que utilice Visual Studio Code para escribir el script de PowerShell, ya que el Bloc de notas carece de varias funciones, por lo que no es una utilidad de scripting ideal.
3]Ejecute y pruebe el script de PowerShell
Ahora, veamos cómo ejecutar el script PowerShell. Dado que hemos creado el script de PowerShell usando el Bloc de notas, para ejecutarlo, debemos utilizar PowerShell. Entonces, abra PowerShell como administrador y luego ejecute el siguiente comando.
& "script-location/script-name.ps1"Si no está seguro de cuál es la ubicación exacta de su script, haga clic derecho sobre él, vaya a Propiedades y, desde el campo Ubicación, copie la ubicación exacta. Simplemente ingrese la ubicación y el nombre del script en la sintaxis proporcionada anteriormente y estará listo para comenzar.
4. Programe el script usando el Programador de tareas
Si su secuencia de comandos funciona bien, no hay ningún problema en programarla. Para hacer lo mismo, usaremos Task Schedule, una aplicación integrada en Windows que puede hacer lo que sugiere su nombre. Siga los pasos que se mencionan a continuación para programar su script de PowerShell.
- Inicie Programador de tareas.
- Haga clic derecho en Biblioteca del Programador de tareas y haga clic en Crear tarea básica.
- Ingrese el nombre y la descripción (si lo desea) y haga clic en Siguiente.
- Ahora, seleccione cuándo desea que se genere la tarea y haga clic en Siguiente.
- Seleccione la fecha y hora correctas en la siguiente ventana y haga clic en Siguiente.
- En la ventana Acción, seleccione Iniciar un programa y haga clic en Siguiente.
- Luego, en la opción Programa/Scripts , haga clic en Examinar.
- Vaya a C:\Windows\System32\WindowsPowerShell\v1.0 y seleccione powershell.exe.
- A continuación, en Agregar argumentos, ingrese el nombre del script con la ubicación y haga clic en Siguiente > Finalizar.
Puede seleccionar la tarea y hacer clic en Ejecutar para confirmar si está funcionando o no.
Con suerte, ahora sabes cómo crear y ejecutar un script de PowerShell en una computadora con Windows.
Leer: Cómo eliminar una tarea programada en Windows
¿Puedo usar PowerShell para automatizar tareas?
Sí, con la ayuda del lenguaje de secuencias de comandos de PowerShell, puede escribir secuencias de comandos que, cuando se ejecutan, pueden realizar tareas automáticamente. Este script se puede programar utilizando la utilidad Programador de tareas incorporada y estará listo para comenzar.
Leer: Cómo ejecutar una tarea programada después de que se completa otra tarea
¿Cómo programo un script de PowerShell para que se ejecute automáticamente?
La utilidad Programador de tareas le permite ejecutar el script de PowerShell automáticamente. Puede programarlo para que se ejecute en un momento determinado y, sin duda, lo hará por usted.
Lea también: Cómo programar un archivo por lotes para que se ejecute automáticamente en Windows.




