Introducción a PowerShell
PowerShell es una utilidad integrada de Windows que incluye un amplio lenguaje de secuencias de comandos. Si está acostumbrado a escribir archivos .bat para realizar acciones de línea de comandos, quedará impresionado con todo lo que PowerShell puede hacer. Tenga en cuenta que no soy (todavía) un gurú de PowerShell. Sin embargo, como he estado trabajando con él, me ha impresionado tanto que quería presentarlo a los lectores leales de WindowsTips.
Puede iniciar PowerShell de varias formas diferentes, y depende de la versión de Windows que esté ejecutando en cuanto a lo que verá. Por lo tanto, aunque mencionaré diferentes formas de invocarlo, me concentraré en usar PowerShell desde la línea de comandos.
Una forma de invocar PowerShell es abrir una ventana de la línea de comandos (que se describe en otro consejo) y escribir «PowerShell» (sin las comillas) seguido de Enter. Otra forma es utilizar las capacidades de búsqueda de Windows para buscar «Windows PowerShell». Una tercera forma es buscar nuevamente «Windows PowerShell» y elegir el resultado de búsqueda llamado «Windows PowerShell ISE». En la última versión de Windows 10, cuando selecciona este elemento, verá una pantalla dividida donde puede ingresar interactivamente los comandos de PowerShell en el lado izquierdo de la pantalla y también crear un archivo de script de PowerShell en el lado izquierdo de la pantalla.
La pantalla de Windows PowerShell ISE se ve así: (Consulte la Figura 1.)
Figura 1. Windows PowerShell ISE.
Si está utilizando una versión anterior de Windows 10, cuando seleccione este elemento verá una pantalla dividida donde puede ingresar de forma interactiva los comandos de PowerShell en la parte inferior de la pantalla y también crear un archivo de script de PowerShell en la parte superior de la pantalla. Esta pantalla dividida puede verse así: (Ver Figura 2.)
Figura 2. PowerShell ISE.
Una vez que está en PowerShell, se ocupa principalmente de «cmdlets». Los cmdlets siguen un patrón de verbio-sustantivo. Por ejemplo, para obtener ayuda dentro de PowerShell, escriba Get-Help y presione Entrar. Habrá otros consejos sobre PowerShell, pero si no puede esperar, se sugiere que comience por los siguientes temas de ayuda:
PS> Get-Help Get-Command PS> Get-Help Get-Member PS> Get-Help Where-Object PS> Get-Help About_Object
El primer comando devuelve información sobre los cmdlets, mientras que el segundo obtiene las propiedades y los métodos de un objeto. El tercer comando filtra las propiedades del objeto y el comando final explica el uso de objetos en PowerShell.
Un script de PowerShell puede ser un poco detallado, por lo que incorpora elementos llamados alias, que son atajos para muchos de los cmdlets más populares. Por ejemplo, en lugar de escribir Get-Help, puede escribir Help. Para ver una lista de los alias existentes, escriba Get-Alias en el indicador de PS.
Los scripts de PowerShell son archivos de texto normales que terminan con una extensión .ps1 y contienen una secuencia de cmdlets diseñados para realizar una función. Por ejemplo, podría escribir un script de PowerShell que muestre «Hola» en la consola. Sin embargo, antes de poder ejecutar scripts, primero debe establecer el entorno de seguridad. Siga estos pasos:
Invoque la línea de comandos de Windows, especificando Ejecutar como administrador
Invoque PowerShell escribiendo «PowerShell» en el símbolo del sistema
En el indicador de PowerShell, escriba Set-ExecutionPolicy RemoteSigned
Estos pasos solo deben realizarse una vez para que pueda ejecutar scripts de ahora en adelante. Ahora inicie el Bloc de notas y escriba lo siguiente:
Write-Output "Hello"
Salga del Bloc de notas, nombre su archivo Hello.ps1 y asegúrese de que esté guardado en el directorio indicado por su sesión de PowerShell. (El nombre del directorio es parte del indicador de PowerShell; tengo un directorio C: \ PowerShell donde guardo todos mis archivos .ps1). Desde el indicador de PowerShell, escriba «. \ Hello.ps1»
y debería ver su secuencia de comandos ejecutada, es decir, la palabra «Hola» se mostrará en la pantalla.
Se puede decir mucho más sobre PowerShell, pero dado que este es un consejo introductorio, solo mencionaré algunas cosas más. Dado que siempre es una buena práctica comentar sus scripts, debe saber que el carácter de comentario de PowerShell es el símbolo «#». Todo lo que aparece a la derecha de este carácter se ignora. Y, hablando de caracteres especiales, si necesita continuar una línea de PowerShell a otra línea, termine la primera línea con un acento grave («` «), a veces llamado carácter de tilde o apóstrofe al revés.
Otra cosa a la que hay que acostumbrarse es la capacidad de «canalizar» la salida de un comando a otro. Los scripts de PowerShell a menudo tienen su canalización de cmdlets a otros cmdlets. El carácter de barra vertical es el «|» símbolo. Entonces, por ejemplo, puede formatear la salida de un cmdlet de diferentes maneras mediante la canalización en uno de los cmdlets de «formato». Supongamos que desea obtener las propiedades de un archivo llamado «C: \ Temp \ VmwareStatus.log». Puede hacer esto usando el cmdlet Get-ItemProperty así:
PD> Get-ItemProperty C: \ Temp \ VmwareStatus.log
De forma predeterminada, las propiedades del archivo se mostrarán en formato de tabla.
Si desea que las propiedades se muestren en una lista, puede canalizar la salida al cmdlet Format-List:
PS> Get-ItemProperty C: \ Temp \ VmwareStatus.log | Lista de formatos
Por último, si desea volver al entorno familiar de la línea de comandos, simplemente escriba «cmd» en el indicador de PowerShell. Para salir de este entorno, simplemente escriba «Salir». Para salir de PowerShell, también escriba «Salir».
Este consejo (13506) se aplica a Windows 7, 8 y 10.