PowerShell: Qué es y comandos básicos

PowerShell es una interfaz de consola más avanzada que la clásica linea de comandos MS-DOS. PowerShell es un interprete de comandos orientado a objetos, destinado a programadores y administradores del sistema para automatizar tareas o realizar tareas de forma más controlada y sencilla.

Esta herramienta disponible por defecto en Windows 10 ya era compatible con versiones anteriores de Windows pero requería de una instalación previa y no solo es capaz de interactuar con el sistema operativo sino que también puede realizar tareas con otras herramientas de Windows como SQL Server, Exchange o IIS.

Abrir Powershell

Existen varias ociones para abrir PowerShell siendo las más comunes las siguientes:

  • Pulsa las teclas Windows+R y en la nueva ventana escribe PowerShell
  • Busca en Cortana PowerShell y haz clic sobre él.

Comandos básicos

A continuación os dejo una serie de comandos básicos de PowerShell que deberías conocer para empezar a utilizar este programa tan útil y tan desconocido por algunos.

Get-Command

Comando para conocer todos los comandos disponibles en PowerShell. Si el comando se acompaña de un parámetro nos mostrara que comandos aceptan dicho parámetro. Por ejemplo, escribe Get-Command *-help

PowerShell: Qué es y comandos básicos

Si no recuerdas el nombre del comando a utilizar puedes escribir Get-Command -Name *palabraBuscar*. En el siguiente ejemplo he buscado los comandos que contienen la palabra cop. Los asteriscos indican que puede contener más letras por delante o por detrás.

Get-Help

Comando para obtener ayuda de PowerShell. Se puede escribir Get-Help directamente o seguido del comando que necesites para tener ayuda más especifica.

Get-History

Comando que nos devuelve un historial de los comandos que se han ejecutado en la sesión activa de PowerShell (aunque se haya utilizado el comando Clear, aparecerán todos los que se han ejecutado)

Get-Host

Comando para obtener información de Powershell instalado en el sistema.

Get-Service

Comando para obtener un listado de los servicios del sistema junto a su estado. También puedes obtener un listado de aquellos que están parado o ejecutandose escribiendo

#En ejecución
Get-Service | Where-Object {$_.Status -eq "Running"}

#Parados
Get-Service | Where-Object {$_.Status -eq "Stopped"}Lenguaje del código: PHP (php)

Start-Service

Comando para poner en ejecución un servicio. En el siguiente ejemplo se inicia el servicio de Windows Update.

Start-Service -Name "wuauserv"Lenguaje del código: JavaScript (javascript)

Stop-Service

Comando para detener un servicio. En el siguiente ejemplo se detiene el servicio de Windows Update.

Stop-Service -Name "wuauserv"Lenguaje del código: JavaScript (javascript)

Get-Date

Comando que nos devolvera la fecha actual.

Si escribimos el comando seguido de una fecha nos dirá que día fué.

Get-Date 26.09.1986Lenguaje del código: CSS (css)

Get-Item

Comando para obtener información de un fichero o carpeta.

Copy-Item

Comando para copiar archivos o carpetas así como entradas o claves del registro. También permite renombre el nuevo fichero copiado. En el siguiente ejemplo copio el archivo de texto MiguelTroyano_com.txt ubicado en C:\Ejemplos a la mis ubicación pero cambiando el nombre a MiguelTroyano_antiguo.txt

Copy-Item "C:\Ejemplos\MiguelTroyano_com.txt" -Destination "C:\Ejemplos\MiguelTroyano_antiguo.txt"Lenguaje del código: JavaScript (javascript)

Remove-Item

Comando para eliminar archivos, carpetas, registros, funciones, etc.

Remove-Item "C:\Ejemplos\MiguelTroyano_antiguo.txt"Lenguaje del código: JavaScript (javascript)

Set-Variable

Comando para crear variables. En el siguiente ejemplo se crea la variable llamada Autor con el valor Miguel Troyano.

Set-Variable -Name "autor" -value "Miguel Troyano"Lenguaje del código: JavaScript (javascript)

Get-Variable

Comando que devuelve el contenido de una variable.

Invoke-Command

Comando que permite ejecutar un script o comando de PowerShell.

Invoke-WebRequest

Comando para acceder a una URL y obtener información relacionada con los servicios y páginas web. Por ejemplo, para obtener todos los enlaces de una página web.

Set-ExecutionPolicy

Comando para cambiar la política de ejecución de los script de PowerShell. Las opciones permitidas son:

  • All Signed
  • Remote Signed
  • Restricted
  • Unrestricted
Set-ExecutionPolicy -ExecutionPolicy UnrestrictedLenguaje del código: JavaScript (javascript)

Get-Process

Comando para obtener una lista de los procesos activos en el sistema.

Start-Process

Comando para comenzar a ejecutar un proceso. En el siguiente ejemplo se abre el notepad en blanco.

Start-Process -FilePath “notepad” –Verb

Stop-Process

Comando para parar un proceso. En el siguiente ejemplo se para el proceso del notepad abierto anteriormente. Se puede parar por nombre o id.

Stop-Process -name "notepad"Lenguaje del código: JavaScript (javascript)

Clear

Limpia la ventana de PowerShell para no visualizar todos los comandos ejecutados anteriormente.

Exit

Comando para cerrar el programa.

Escribir un comentario