Sei sulla pagina 1di 6

25 comandos de PowerShell que todo administrador debe saber

Seguimos con otra entrada de la Powershell enfocada a Windows Server 2012, esta vez con 25
comandos y ejemplos de donde podrían usarse cubriendo desde lo básico a ejemplos más avanzados.

1. Entradas comunes PowerShell


1. Navegar registro de Windows como si fuera un directorio de archivos

Es una función que no muchos saben de serie y es que puedes navegar por los registros de Windows
usando la PS.

1. PS C:\Users\jcarrillo> cd hkcu:
2. PS HKCU:\> ls

1. Hive: HKEY_CURRENT_USER
2.
3.
4. SKC VC Name Property
5. --- -- ---- --------
6. 2 0 AppEvents {}
7. 0 36 Console {ColorTable00,
ColorTable01, ColorTab...
8. 13 0 Control Panel {}
9. 0 2 Environment {TEMP, TMP}
10. 4 0 EUDC {}
11. 1 6 Identities {Identity Ordinal,
Migrated7, Last Us...
12. 3 0 Keyboard Layout {}
13. 2 0 Layout {}
14. 0 0 Network {}
15. 3 0 Printers {}
16. 37 0 Software {}
17. 1 0 System {}
18. 1 8 Volatile Environment {LOGONSERVER, USERDOMAIN,
USERNAME, U...

2. Buscar entre archivos incluyendo sub-carpetas

Podremos realizar una búsqueda en powershell y que se aplica a todos los sub-directorios que
existan por y si buscamos en la raíz buscara en toda la partición.

1. dir –r | select string "quebuscar"

3. TOP 5 Procesos con más consumo

Podemos ver cuáles son los procesos que consumen más memoria en el sistema.

1. -- ps | sort –p ws | select –last 5

4. Reiniciar Servicio

Podemos hacer que un servicio se detenga y luego vuelva a iniciar muy útil.

1. -- Restart-Service DHCP

5. Listar Ítems de directorio

Listamos todos los Ítems de un directorio:

1. -- Get-ChildItem – Force

6. Buscar en varios sitios a la vez

Buscamos en una seria de directorios o carpetas:

1. -- Get-ChildItem –Force c:\directory –Recurse

7. Remover / Eliminar Archivos PowerShell

Elminar todos los archivos con la Powershell en un directorio sin pedir confirmación en cada uno de
ellos.

1. Remove-Item C:\tobedeleted –Recurse

8. Reiniciar la Maquina
Comando para riniciar la maquina con Powershell directamente.

1. (Get-WmiObject -Class Win32_OperatingSystem -ComputerName .).Win32Shutdown(2)

Ahora nos pasamos a la recolección de información del sistema con la PowerShell.

2. Recolectando Información del Sistema con PowerShell

9. Información del hardware


Obtiene la información del sistema en uso.

1. Get-WmiObject -Class Win32_ComputerSystem

10. Información de la BIOS

Lista el tipo de BIOS del sistema en uso con el siguiente comando:

1. Get-WmiObject -Class Win32_BIOS -ComputerName

11 Actualizaciones Del Sistema

Lista todas las actualizaciones de Windows instaladas en el sistema se incluyen QFES o archivos de
Windows Update.

1. Get-WmiObject -Class Win32_QuickFixEngineering -ComputerName .

12. Usuario en linea

Muestra el usuario que está conectado en el sistema.

1. Get-WmiObject -Class Win32_ComputerSystem -Property UserName -ComputerName

13. Aplicaciones Instaladas

Muestra una lista con todas las aplicaciones instaladas con solo nombre sin descripción:

1. Get-WmiObject -Class Win32_Product -ComputerName . | Format-Wide -Column 1

14. Mostrar IP

Muestra todas las IP asociadas a la maquina físicas o virtuales.

1. Get-WmiObject -Class Win32_NetworkAdapterConfiguration -Filter IPEnabled=TRUE


-ComputerName . | Format-Table -Property IPAddress

15. Mayor información de la red

Obtenemos mayor información como la interfaz asociada y los DNS.


1. Get-WmiObject -Class Win32_NetworkAdapterConfiguration -Filter IPEnabled=TRUE
-ComputerName . | Select-Object -Property [a-z]* -ExcludeProperty IPX*,WINS*

16. NIC con DHCP

Muestra las interfaces de red configuradas en DHCP que estén habilitadas.

1. Get-WmiObject -Class Win32_NetworkAdapterConfiguration -Filter


"DHCPEnabled=true" –ComputerName

17. Habilitar interfaces en DHCP

Habilita las interfaces que estén en DHCP en el Sistema con Powershell.

1. Get-WmiObject -Class Win32_NetworkAdapterConfiguration -Filter IPEnabled=true


-ComputerName . | ForEach-Object -Process {$_.EnableDHCP()}

Nos vamos ahora a la administración de aplicaciones, tema muy interesante y demandado.

3. Administración de aplicaciones con PowerShell

18. Instalar paquetes de manera Remota

Instalar un paquete MSI en una computadora remota.

1. (Get-WMIObject -ComputerName TARGETMACHINE -List | Where-Object -FilterScript


{$_.Name -eq
"Win32_Product"}).Install(\\MACHINEWHEREMSIRESIDES\path\package.msi)

19. Actualizar un paquete de manera Remota

Actualizamos un paquete MSI en un computador remoto.

1. (Get-WmiObject -Class Win32_Product -ComputerName . -Filter


"Name='name_of_app_to_be_upgraded'").Upgrade(\\MACHINEWHEREMSIRESIDES\path\up
grade_package.msi)

20. Eliminar un paquete MSI

Removemos / Eliminamos un paquete con extensión MSI de la maquina en uso.


1. (Get-WmiObject -Class Win32_Product -Filter "Name='product_to_remove'" -
ComputerName . ).Uninstall()

21. Apagar Remotamente

Podemos incluso apagar una máquina remota usando este comando:

1. Start-Sleep 60; Restart-Computer –Force –ComputerName TARGETMACHINE

22. Añadir Impresoras

Añadir una impresora a nuestro equipo pero antes debe ser reconocida instalando los drivers
necesarios.

1. (New-Object -ComObject
WScript.Network).AddWindowsPrinterConnection("\\printerserver\hplaser3")

23. Eliminar Impresora con PowerShell

Eliminar / Remover una impresora de nuestro equipo es importante saber que no desinstala los
controladores.

1. Remove a printer -- (New-Object -ComObject


WScript.Network).RemovePrinterConnection("\\printerserver\hplaser3 ")

24. Entrar a una PowerShell Remota

Podemos ingresar a una PowerShell de una maquina remota pero antes debemos tener habilitado el
remote management.

1. enter-pssession TARGETMACHINE

25. Correr Script en Remoto

Para finalizar podemos invocar un script en un equipo en remoto y es uno de los mas interesantes.

1. invoke-command -computername machine1, machine2 -filepath


c:\Script\script.ps1

Ya están los 25 comandos. Se han listado comandos que pueden facilitar muchas tareas como
administrador desde tareas como explorar en un directorio a un poco mas complicadas como habilitar
una NIC con DHCP, es importante destacar que muchos de estos comandos solo funcionarán bajo la
PowerShell de Windows Server 2008-2012 y R2 que ofrecen una mayor variedad de cmdlets. No es
una lista de los mejores comandos solo son algunos que pueden usarse en tareas en general si tienes
alguna sugerencia u otro comando interesante no dudes en dejarlo en los comentarios.
https://www.solvetic.com/tutoriales/article/2077-25-comandos-de-powershell-que-todo-administrador-debe-
saber/