A todo el mundo le gusta Powershell y una de las razones mas importantes es el increíble poder, funcionalidad y flexibilidad que tiene en comparación al antiguo Command Prompt. Es cierto que tiene una curva de aprendizaje algo compleja, pero una vez domines los comandos esenciales seras una maquina. Como todos sabemos los comandos en Powershell son llamados Cmdlets.
Veamos los 25 tareas básicas mas comunes que todo administrador de sistemas puede llevar acabo utilizando PowerShell.
1-. Navegar por el registro de Windows como si de un sistema de archivos se tratase
Cd hkcu:
2-. Buscar de forma recurrente una cadena de texto dentro de todos los archivos:
dir –r | select string "valorabuscar"
3-. Mostrar los cinco procesos que consumen mas memoria en el Sistema
ps | sort –p ws | select –last 5
4-. Resetear un Servicio (Detenerlo y reiniciarlo) como ejemplo DHCP
Restart-Service DHCP
5-. Listar todos los ítems en una carpeta
Get-ChildItem –Force
6-. Remover todos los archivos de un directorio sin confirmación
Remove-Item C:\directorioaeliminar –Recurse
7-. Reiniciar el ordenador
(Get-WmiObject -Class Win32_OperatingSystem -ComputerName .).Win32Shutdown(2)
8-. Obtener datos del sistema como marca, modelo, capacidad de ram, dominio, etc.
Get-WmiObject -Class Win32_ComputerSystem
9-. Obtener información acerca de la BIOS
Get-WmiObject -Class Win32_BIOS –ComputerName Nombredelordenador
10-. Listar los Fixes o Actualizaciones de Seguridad de Windows instaladas en el Sistema.
Get-WmiObject -Class Win32_QuickFixEngineering –ComputerName nombredelordenador
11-. Obtener el nombre de usuario de la persona conectada en un determinado ordenador
Get-WmiObject -Class Win32_ComputerSystem -Property UserName –ComputerName nombredelordenador
12-. Obtener los nombres de las aplicaciones instaladas en el Sistema. (Puede sustituir el punto por el nombre de un ordenador de tu red y obtendrás esa información)
Get-WmiObject -Class Win32_Product -ComputerName . | Format-Wide -Column 1
13-. Obtener la dirección Ip asignada a un ordenador.
Get-WmiObject -Class Win32_NetworkAdapterConfiguration -Filter IPEnabled=TRUE -ComputerName . | Format-Table -Property IPAddress
14-. Listar los adaptadores de red con DHCP activo.
Get-WmiObject -Class Win32_NetworkAdapterConfiguration -Filter "DHCPEnabled=true" -ComputerName .
15-. Instalar un paquete MSI en un ordenador remoto
(Get-WMIObject -ComputerName ORDENADORDESTINO -List | Where-Object -FilterScript {$_.Name -eq "Win32_Product"}).Install(\\ORDENADORDONDEESTAELMSI\path\package.msi)
16-. Actualizar una aplicación usando un paquete MSI
(Get-WmiObject -Class Win32_Product -ComputerName . -Filter "Name='name_of_app_to_be_upgraded'").Upgrade(\\ORDENADORDONDEESTAELMSI\path\upgrade_package.msi)
17-. Remover un paquete MSI
(Get-WmiObject -Class Win32_Product -Filter "Name='Programa_a_remover" -ComputerName . ).Uninstall()
18-. Apagar un ordenador remotamente dentro de un minuto.
Start-Sleep 60; Restart-Computer –Force –ComputerName Nombredelordenador
19-. Agregar una Impresora de red
(New-Object -ComObject WScript.Network).AddWindowsPrinterConnection("\\printerserver\Samsung")
20-. Remover una Impresora
(New-Object -ComObject WScript.Network).RemovePrinterConnection("\\printerserver\Samsung")
21-. Abrir una sesión remota de Powershell (Debes de tener activo la opción de administración remota).
Enter-PsSession Nombredelordenador
22-. Enviar un script y ejecutarlo remotamente en varios ordenadores.
Invoke-command –computername maquina1, maquina2, maquina3 –filepath c:\script\nombredelscript.ps1
23-. Detener un proceso (En este caso detendremos todos los procesos que empiecen por notep)
Stop-Process –processname notep*
24-. Borrar todos los archivos con “X” días de antigüedad:
Get-ChildItem -Path "Ruta" -Recurse | Where-Object CreationTime -LT (Get-Date).AddDays(-10)
25-. Realizar un test de conectividad
Test-NetConnection -ComputerName nombredelordenador
Dejamos por aqui esta entrega recuerda suscribirte y compartir este contenido en las redes sociales. Si tienes duda deja tu comentario aqui abajo que con gusto te ayudare.
0 Comments