0% encontró este documento útil (0 votos)
203 vistas8 páginas

PowerShell Basico

Windows PowerShell es un motor de automatización y lenguaje de scripts diseñado para administradores de sistemas. Ayuda a automatizar tareas de administración en Windows y otras aplicaciones. PowerShell usa cmdlets que consisten en un verbo y sustantivo separados por un guión para realizar acciones. Los scripts de PowerShell se almacenan en archivos .ps1 y se pueden ejecutar desde la consola de PowerShell.

Cargado por

FenandoGómezz
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
203 vistas8 páginas

PowerShell Basico

Windows PowerShell es un motor de automatización y lenguaje de scripts diseñado para administradores de sistemas. Ayuda a automatizar tareas de administración en Windows y otras aplicaciones. PowerShell usa cmdlets que consisten en un verbo y sustantivo separados por un guión para realizar acciones. Los scripts de PowerShell se almacenan en archivos .ps1 y se pueden ejecutar desde la consola de PowerShell.

Cargado por

FenandoGómezz
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 8

¿Qué es Windows PowerShell?

Windows PowerShell es un motor de automatización orientado a objetos y un lenguaje de


scripts. Está diseñado principalmente para los administradores de sistemas. Ayuda a los
profesionales de TI a controlar y automatizar la administración del sistema operativo Windows y
otras aplicaciones.

La primera versión 1.0 de PowerShell fue lanzada en 2006. Hoy, PowerShell está en la versión 7.
Con el paso de los años y las versiones, las capacidades y ambientes de alojamiento de PowerShell
crecieron significativamente.

Cmdlet de PowerShell
Un cmdlet que también es llamado Command let es un comando ligero usado en el entorno de la
ventana base de PowerShell. PowerShell invoca estos cmdlets en la línea de comandos.
Un cmdlet siempre consiste en un verbo y un sustantivo, separados por un guión. Algunos de los
verbos principales que se usan para PowerShell, son:
• Get - conseguir algo.
• Start - Para ejecutar algo.
• Out - Para la salida de algo.
• Stop - Para detener algo que está corriendo.
• Set - Para definir algo.
• New - Para crear algo.

Empezar a utilizar PowerShell

Podemos ejecutar la consola de Windows PowerShell para comenzar a lanzar comandos.

Es muy útil utilizar el editor de scripts Windows PowerShell ISE provee un entorno completo para
el desarrollo de scripts de Windows PowerShell. Este nos ofrece diferentes ventajas (Panel de
comandos, Visualización de scripts, Intellisense, etc).

1
Scripts de PowerShell
Los Scripts de Powershell se almacenan en un archivo .ps1. De forma predeterminada, no se puede
ejecutar un script con sólo hacer doble clic en el archivo. Esto protege tu sistema de daños
accidentales.

Para poder ejecutar un script:

1) Abrir una ventana de PowerShell con privilegios. Haz clic derecho en PowerShell o PowerShell
ISE y "Ejecutar como Administrador".

2) Modifica si es necesario las Políticas de Ejecución. Para ello:

- Ejecuta el cmdlets(comando) “Get-ExecutionPolicy”.


- Si esta se encuentra en estado “Restricted”, ejecuta el comando “Set-ExecutionPolicy
unrestricted” e indícale que “Sí” en la ventana emergente.

2
- Puedes comprobar que ha cambiado:

***Si estas usando la versión de Windows Server 2109 es posible que el resultado sea distinto, y no
sea necesario realizar dicho cambio:

La opción “RemoteSigned” nos permite ejecutar scripts locales sin ningun problema.

Ejecutar un script
Una vez realizados los cambios del punto anterior, para ejecutar un script, podemos hacerlo de
diferentes formas:

1) Si utilizamos PowerShell ISE, disponemos de un botón “Ejecutar” (F5) en la barra de


herramientas.
2) Escribiendo .\script.ps1, si nos encontramos en la carpeta donde esta el script a ejecutar.
3) Usando & “C\rutascript\script.ps1”, para especificar rutas absolutas.

3
PROGRAMACIÓN BÁSICA CON POWERSHELL
1) Variables
Las variables se declaran en la forma $ <variable>

$resultado=”Correcto”

Para obtener el valor:


$resultado

Para escribirlo en pantalla:


Write-Output $resultado

También se podrían usar los cmdlets:


Set-Variable -Name "descuento" -Value "Aquí se fija el
valor" Get-Variable -Name "descuento"
New-Item “Path” -type Directory
$valor= Read-Host "Introduce una letra"

switch -Wildcard ($valor) {

"a" {Write-Host "Amapola";break}


default {""}

Más información: http://somebooks.es/capitulo-3-variables-powershell/2/

***Algo más avanzado sería acceder a su propiedad “value”:


(Get-Variable -Name "descuento").value

2) Tipo de dato de una variable

Puedes ver una tabla con los diferentes tipos de datos en el enlace:
http://somebooks.es/capitulo-3-variables-powershell/5/

Declaración explícita de variables

Revisa el enlace, y prueba a ejecutar los dos scripts siguientes, observando las diferencias.
http://somebooks.es/capitulo-3-variables-powershell/6/

$num=Read-Host "Introduce un número"


$resultado=$num + 4
Write-Output $resultado

[int]$num=Read-Host "Introduce un número"


$resultado=$num + 4
Write-Output $resultado

4
***Al utilizar el comando Read-Host, por defecto el tipo de variable sera de tipo “string” (cadena
de texto)

***PowerShell ISE mantiene el valor de las variables entre distintas ejecuciones de scripts. En
ocasiones es necesario borrar las variables empleadas:
Remove-Variable * -ErrorAction SilentlyContinue
add-Content "C:\" -NoNewline

5
3) Operadores

Operadores de comparación: Permiten comparar varios objetos y su resultado es True o False.

Operadores aritméticos: permiten realizar operaciones matemáticas.

Operadores lógicos: permiten asociar varias comparaciones.

6
Operadores de asignación: Permiten asignar a una variable el resultado de una operación

Puedes ampliar esta información en el siguiente enlace: https://www.maquinasvirtuales.eu/curso-


basico-de-powershell-operadores/

4) Estructuras condicionales

Estructura IF-ELSE:
http://somebooks.es/capitulo-5-estructuras-condicionales/2/
Estructura SWITCH:
http://somebooks.es/capitulo-5-estructuras-condicionales/3/

5) Estructuras repetitivas:

Estructura WHILE:
http://somebooks.es/capitulo-6-estructuras-repetitivas/3/
Estructura FOR:
http://somebooks.es/capitulo-6-estructuras-repetitivas/5/
Estructura FOREACH:
http://somebooks.es/capitulo-6-estructuras-repetitivas/6/

6) Leer entrada teclado y mostrar por pantalla


Para leer un valor introducido por teclado usaremos el cmdlet: Read-Host

Para mostrar un valor en pantalla es recomendable usar: Write-Ouput

Ejemplo para almacenar valor en una variable, y mostrarlo en pantalla:

$num = Read-Host “Introduce un número”


Write-Output $num

***Normalmente se suele utilizar Write-Host y Write-Ouput para sacar por pantalla alguna
información. Pero hay una gran diferencia, Write-Host escribe directamente en pantalla el resultado,
mientras que Write-Output genera como salida un objeto (o varios) que puede ser canalizado a otros
comandos.

7
7)Añadir comentarios
Para comentar líneas dentro de nuestro script usaremos el símbolo #
#linea comentada

Si queremos comentar un bloque:


<# bloque de texto
comentado #>

8) Argumentos
Ejemplo de script al que le pasaremos dos parámetros:

Write-Output "El primer argumento es: " $args[0]


Write-Output "El segundo argumento es: "
$args[1]

Ejecutaremos el script desde la linea de comandos de powershell:


script.ps1 parametro1 parametro2

9) Archivos y carpetas
Mostrar contenido de una carpeta:
Get-ChildItem (dir)

Crear archivos y carpetas


New-Item -Path 'C:\temp\New Folder' -ItemType "directory"
New-Item -Path 'C:\temp\New Folder\file.txt' -ItemType
"file" New-Item 'archivo.txt' -ItemType "file"

Eliminar
Remove-Item C:\temp\DeleteMe

Insertar contenido en un documento


Set-Content archivo.txt -value “Mi contenido”
Add-Content archivo.txt -value “Más texto”

También es posible usar el


redireccionamiento: “texto a añadir” »
archivo.txt

Renombrar
Rename-Item “nombre_original” “nombre_modificado”

Mover (y renombrar)
Move-Item “origen” “destino”

Borrar contenido
Clear-Content archivo.txt

También podría gustarte