Using Windows PowerShell
Using Windows PowerShell
Objetivos
El objetivo de esta práctica de laboratorio es estudiar algunas de las funciones de PowerShell.
Parte 1: Acceder a la consola PowerShell.
Parte 2: Explorar los comandos del Command Prompt y del PowerShell.
Parte 3: Explorar cmdlets.
Parte 4: Explorar el comando netstat utilizando PowerShell.
Parte 5: Vaciar la papelera de reciclaje utilizando PowerShell
Antecedentes / Escenario
PowerShell es una potente herramienta de automatización. Es una consola de comandos, y también un
lenguaje de scripts. En esta práctica de laboratorio utilizarán la consola para ejecutar algunos de los
comandos disponibles tanto en el símbolo del sistema como en PowerShell. PowerShell también tiene
funciones que pueden crear scripts para automatizar tareas y trabajar junto con el Sistema
operativo Windows.
Recursos necesarios
1 PC Windows con PowerShell instalado y acceso a internet
Instrucciones
Pregunta:
b. Prueben otro comando que hayan utilizando en el símbolo del sistema, como ping, cd o ipconfig.
¿Cuáles son los resultados?
Son exactamente los mismos
2017 - 2024 Cisco y/o sus filiales. Todos los derechos reservados. Información pública de Cisco Página 1 de 12
www.netacad.com
Práctica de laboratorio: Utilizar Windows PowerShell
CommandTypeNameVersionSource
----------------------------
Aliasdir -> Get-ChildItem
Pregunta:
Los cmdlets deben ser simples y estar diseñados para usarse en combinación con otros cmdlets. Por
ejemplo, los cmdlets Get solo deben recuperar datos, los cmdlets Set solo deben establecer o cambiar
datos, los cmdlets Format solo deben dar formato a los datos y los cmdlets Out solo deben dirigir la
salida a un destino especificado.
Para cada cmdlet, proporcione un archivo de ayuda al que se pueda acceder escribiendo lo siguiente:
La vista detallada del archivo de ayuda del cmdlet debe incluir una descripción del cmdlet, la sintaxis del
comando, descripciones de los parámetros y un ejemplo que ilustre el uso del cmdlet.
Los cmdlets se usan de forma similar a los comandos y utilidades del sistema operativo. Los comandos
de PowerShell no distinguen entre mayúsculas y minúsculas.
Cierren la ventana del símbolo del sistema cuando hayan terminado.
NETSTAT [-a] [-b] [-e] [-f] [-n] [-o] [-p proto] [-r] [-s] [-x] [-t] [interval]
-a Displays all connections and listening ports.
-b muestra el ejecutable que se utiliza para crear cada puerto de conexión o
escucha. En algunos casos, los ejecutables más conocidos alojan varios componentes
independientes, y en estos casos se muestra la secuencia de componentes que se utiliza
para crear el puerto de conexión o escucha. En este caso, el nombre del archivo
ejecutable se encuentra entre los signos [] en la parte inferior, arriba se encuentra
el componente al que le da nombre, y así sucesivamente hasta que se alcanza TCP/IP.
2017 – 2020 Cisco y/o sus filiales. Todos los derechos reservados. Información pública de Cisco Página 2 de 12
www.netacad.com
Práctica de laboratorio: Utilizar Windows PowerShell
Tenga en cuenta que esta opción demanda tiempo y fallará a menos que cuente con los
permisos suficientes.
<some output omitted>
b. Para mostrar la tabla de routing con las rutas activas, introduzcan netstat -r en el cursor.
PS C:\Users\CyberOpsUser> netstat -r
===========================================================================
Interface List
3...08 00 27 a0 c3 53 ......Intel(R) PRO/1000 MT Desktop Adapter
10...08 00 27 26 c1 78 ......Intel(R) PRO/1000 MT Desktop Adapter #2
1...........................Software Loopback Interface 1
===========================================================================
2017 – 2020 Cisco y/o sus filiales. Todos los derechos reservados. Información pública de Cisco Página 3 de 12
www.netacad.com
Práctica de laboratorio: Utilizar Windows PowerShell
c. Abran y ejecuten una segunda PowerShell con privilegios elevados. Hagan clic en Inicio. Busquen
PowerShell, hagan clic derecho en Windows PowerShell y seleccione Run as Administrator (Ejecutar
como administrador). Hagan clic en Yes (Sí) para permitir que esta aplicación realice cambios en sus
dispositivos.
d. El comando netstat también puede mostrar los procesos asociados con las conexiones TCP activas.
Introduzca el comando netstat -abno en el indicador.
PS C:\Windows\system32> netstat -abno
Active Connections
2017 – 2020 Cisco y/o sus filiales. Todos los derechos reservados. Información pública de Cisco Página 4 de 12
www.netacad.com
Práctica de laboratorio: Utilizar Windows PowerShell
Pregunta:
¿Qué información pueden obtener de la ficha Details y del cuadro de diálogo Properties correspondientes
al PID que seleccionaron?El Estado el nombre de usuario la CPU Memoria usada y la virtualizacion
Confirm
Are you sure you want to perform this action?
Performing the operation "Clear-RecycleBin" on target "All of the contents of the
Recycle Bin".
[Y] Yes [A] Yes to All [N] No [L] No to All [S] Suspend [?] Help (default is "Y"): y
Pregunta:
2017 – 2020 Cisco y/o sus filiales. Todos los derechos reservados. Información pública de Cisco Página 5 de 12
www.netacad.com
Práctica de laboratorio: Utilizar Windows PowerShell
Pregunta de reflexión
PowerShell fue desarrollado para la automatización de tareas y la administración de la configuración.
Utilizando el internet, realice una búsqueda de comandos que pueden simplificar sus tareas como analista de
seguridad Registren sus conclusiones.
Una vez que hemos conocido más sobre PowerShell y ya sabemos de lo que se trata realmente, os pasamos
a mostrar una serie de comandos básicos e imprescindibles que debemos de conocer para trabajar con esta
consola en línea de comandos. A medida que vayamos dominándolos podemos ir profundizando en ellos y
lograr tener un mayor control sobre el sistema.
Ayuda para usar cualquier comando
Es posible que a la hora de usar comandos de PowerShell nos encontremos con que nos sepamos cómo
poder utilizarlos, lo que para los usuarios poco experimentados se puede convertir en un serio problema.
Para ello podemos usar el comando Get-Help con el cual obtendremos diferentes tipos de ayuda que nos
proporciona el propio Windows. Ya sea una ayuda genérica, sobre un comando en concreto o saber cómo
funciona cualquier comando:
Get-Help Get-Help <comando> Get-Help <comando> -Full Get-Help <comando> -Example Get-Help *
En ocasiones, también nos puede resultar útil usar el comando Update-Help, que nos va a servir para
descargar librerías de ayuda.
2017 – 2020 Cisco y/o sus filiales. Todos los derechos reservados. Información pública de Cisco Página 6 de 12
www.netacad.com
Práctica de laboratorio: Utilizar Windows PowerShell
En el caso de que necesitamos buscar un directorio concreto desde esta consola, el comando Get-Item que
se encargará de mostrarnos su contenido en cuestión. Hay que tener en cuenta que el uso y tratamiento de
carpetas en el sistema operativo es algo habitual, y PowerShell nos permite tener un mayor control sobre
estos elementos.
Get-Item <ruta>
Si lo que queremos es abrir un archivo desde esta consola, debemos de usar un comando similar al anterior
como es:
Este comando es más útil para obtener listas de información en Windows PowerShell directamente.
Buscar un comando
Es probable que en el momento de querer ejecutar cualquier comando puede que no nos acordemos
exactamente de su sintaxis por lo que PowerShell cuenta con la posibilidad de buscarlos con sólo
acordándonos de una parte de este.
Para poder encontrar comandos de un tipo similar o que contengan una frase en particular es posible usar el
cmdlet Get-Command. Sin embargo, no enumera todos los cmdlet en PowerShell, por lo que se encarga de
usar algunos filtros. Es posible usar los comandos:
El primer comando lo usaremos para obtener comandos relacionados con el nombre que le indiquemos,
mientras que el segundo se usa para poder realizar una función en concreto.
2017 – 2020 Cisco y/o sus filiales. Todos los derechos reservados. Información pública de Cisco Página 7 de 12
www.netacad.com
Práctica de laboratorio: Utilizar Windows PowerShell
Con PowerShell también podemos crear un nuevo directorio utilizando el comando mkdir. Es importante
que a la hora de darle el nombre evitemos usar los espacios.
mkdir DocumentoSoftZone
También podemos evitar el uso de espacios insertando un guion o guion bajo como, por ejemplo:
mkdir DocumentoSoftZone
Copiar y borrar archivos o directorios
Otra de las funciones de la consola de Windows es la posibilidad de copiar y borrar archivos o directorios,
para lo cual podemos usar los comandos Copy-Item o Remove-Item en función de lo que necesitemos.
Si queremos ver todos los elementos que se encuentran dentro de una carpeta podemos hacerlo a través del
comando:
Get-ChildItem
Le podemos añadir el parámetro Force para mostrar también los elementos ocultos del sistema, por
ejemplo, de la unidad C:.
Con PowerShell también tenemos la posibilidad de crear elementos nuevos en función del tipo de elemento.
En caso de que tenga más de un tipo de elemento será necesario especificar el tipo de elemento.
2017 – 2020 Cisco y/o sus filiales. Todos los derechos reservados. Información pública de Cisco Página 8 de 12
www.netacad.com
Práctica de laboratorio: Utilizar Windows PowerShell
Si necesitamos saber todo el contenido de un archivo de texto en una ruta concreta podemos usar el
comando Get-Content, para poder examinarlo sin necesidad de abrirlo. Si se utiliza Get-Content solo, no
ofrece mucha utilidad, pero se puede mezclar con cmdlets más específicos con el objetivo de obtener
resultados más precisos
Get-Content "C:/softzone.txt"
Si bien PowerShell cuenta con soporte para crear y ejecutar scripts, También dispone de restricciones para
cada uno de ellos como parte de medidas de seguridad. Es posible cambiar el nivel de seguridad a
cualquiera en cuatro niveles de restricciones. Para ello es posible usar el comando Set-
ExecutionPolicy seguido de cualquiera de los niveles de seguridad que veremos a continuación:
En esta lista, las políticas de seguridad van desde el menos restrictivo hasta el más restrictivo.
Ver, iniciar, detener, suspender o reiniciar un servicio o proceso
Windows cuenta con determinados servicios que son pequeños procesos de aplicaciones utilizados que
siempre se ejecutan en segundo, como, por ejemplo, para mantenerse siempre en alerta para ejecutarse o
buscar actualizaciones en segundo plano.
Si queremos ver en PowerShell una lista completa de los servicios que se están ejecutando debemos usar el
comando Get-Service. Con la ayuda de otros comandos podemos realizar determinadas acciones como:
Los comandos mostrados en orden descendente podemos realizar acciones como iniciar un nuevo proceso,
detener uno en ejecución, suspender, reanudar o reiniciarlo.
2017 – 2020 Cisco y/o sus filiales. Todos los derechos reservados. Información pública de Cisco Página 9 de 12
www.netacad.com
Práctica de laboratorio: Utilizar Windows PowerShell
De forma similar podemos trabajar con los procesos de Windows. Para ver una lista con todos los procesos
abiertos podemos utilizar el comando Get-Process. Con él podemos realizar determinadas acciones como:
Start-Process <nombre del proceso> Stop-Process <nombre del proceso> Wait-Service <nombre
del proceso>
En la lista en orden descendente, podemos iniciar un proceso nuevo, detenerlo o ponerlo en espera.
Si queremos acceder al historial de procesos que hemos ejecutado en el equipo desde que se ha iniciado
sesión, debemos utilizar comando:
Get-History
Ejecutar aplicaciones UWP en Windows
Una de las finalidades de PowerShell es la posibilidad de ejecutar aplicaciones UWP de manera rápida, por
lo que podemos usar para abrir determinadas aplicaciones o crear nuestros propios scripts. Para ello usamos
el comando Star-Process.
Start-Process «ms-settings:»
2017 – 2020 Cisco y/o sus filiales. Todos los derechos reservados. Información pública de Cisco Página 10 de 12
www.netacad.com
Práctica de laboratorio: Utilizar Windows PowerShell
Si lo que queremos es usar una aplicación UWP como Spotify el comando a escribir sería
Start-Process «spotify:»
De esta forma, sin necesidad de usar la interfaz gráfica de Windows, podemos ejecutar aplicaciones tanto
del sistema como descargadas de la Microsoft Store.
Instalar cualquier navegador
Otra de las funciones que también tenemos a nuestra disposición a través de PowerShell es descargar e
instalar directamente navegadores web como Chrome, Firefox y Opera utilizando en comando Winget.
Dependiendo de que navegador queramos descargar de instalar en nuestro PC, lo primero que debemos
hacer es abrir PowerShell con permisos de administrador y acceder al directorio donde queremos descargar
el navegador que, posteriormente se instalará automáticamente.
También podemos instalar Brave directamente desde PowerShell utilizando este comando
2017 – 2020 Cisco y/o sus filiales. Todos los derechos reservados. Información pública de Cisco Página 11 de 12
www.netacad.com
Práctica de laboratorio: Utilizar Windows PowerShell
Windows, ya que debemos utilizar únicamente comandos para realizar tarea. Pero, antes de desinstalar una
aplicación, debemos identificarla en el equipo y cerrar los procesos asociados si todavía se encuentra abierta
en el equipo. Para identificar la aplicación, utilizaremos el comando
Get-Service
En la segunda columna, Name, se encuentra el nombre de la aplicación que debemos utilizar, en primer
lugar, para cerrarla y detener los procesos en segundo plano y también para desinstalar del equipo. Para
cerrar completamente la aplicación desde PowerShell, utilizamos el comando
Una vez hemos cerrado la aplicación, ya podemos desinstalarla desde PowerShell utilizando el siguiente
comando:
Utilizar PowerShell para eliminar aplicaciones nativas de Windows 10 y Windows 11 el mejor método para
hacerlo, ya que Windows no nos permite realizar este proceso desde la interfaz gráfica en la mayoría de las
aplicaciones nativas.
Si durante el proceso, a pesar de ejecutar PowerShell con permisos de Administrador, se presenta algún
problema o limitación debido a las políticas de ejecución de Windows, podemos solucionar rápidamente
este problema modificándolas con este comando
2017 – 2020 Cisco y/o sus filiales. Todos los derechos reservados. Información pública de Cisco Página 12 de 12
www.netacad.com