Inicio Automatización informática Comandos esenciales de PowerShell que todo usuario de Windows debe conocer: Guía completa para principiantes

Comandos esenciales de PowerShell que todo usuario de Windows debe conocer: Guía completa para principiantes

0
Comandos Powershell esenciales

PowerShell ha revolucionado el modo en que los usuarios de Windows interactúan con sus sistemas operativos, transformando complejas tareas administrativas en procesos sencillos y automatizados.12. Whether you’re a system administrator, IT professional, or an everyday Windows user looking to boost productivity, mastering essential PowerShell commands can save you countless hours and unlock powerful automation capabilities34.

This comprehensive guide covers the most important PowerShell commands that every Windows user should master, from basic navigation to advanced system management. By the end of this tutorial, you’ll have the confidence to leverage PowerShell’s powerful features for daily computing tasks.

¿Qué es PowerShell y por qué debería importarle?

PowerShell es un potente entorno de scripts y shell de línea de comandos. que viene preinstalado en todos los sistemas operativos Windows modernos2. Unlike the traditional Command Prompt, PowerShell uses a estructura sintáctica verbo-sustantivo que hace que los comandos sean intuitivos y legibles para el ser humano1. For example, Obtener proceso recupera los procesos en ejecución, mientras que Stop-Service detiene los servicios del sistema.

Principales ventajas de PowerShell frente al símbolo del sistema

PowerShell ofrece importantes ventajas sobre la interfaz de línea de comandos tradicional1:

  • Salida basada en objetos: En lugar de texto plano, PowerShell trabaja con objetos estructurados que contienen propiedades y métodos
  • Funciones avanzadas de scripting: Cree scripts de automatización complejos con bucles, condiciones y funciones.
  • Ampliable mediante módulos: Añada funcionalidad mediante bibliotecas .NET y cmdlets personalizados
  • Apoyo a los oleoductos: Encadene comandos para procesar datos con eficacia
  • Compatibilidad multiplataforma: Ejecute PowerShell en Windows, Linux y macOS

Primeros pasos: Abrir PowerShell

Antes de sumergirse en los comandos, debe saber cómo acceder a PowerShell25. On Windows 11, the easiest method is:

  1. Type “PowerShell” en la barra de búsqueda de Windows
  2. Haga clic con el botón derecho del ratón en on “Windows PowerShell”
  3. Select “Run as administrator” para privilegios elevados

Para la mayoría de las tareas administrativas, ejecutar PowerShell como administrador le garantiza que dispone de los permisos necesarios para ejecutar comandos a nivel de sistema.

Comandos esenciales de descubrimiento: Su brújula PowerShell

1. Obtener ayuda: Su manual incorporado

En Obtenga ayuda es posiblemente el comando PowerShell más importante you’ll ever learn467. It provides comprehensive documentation for any cmdlet, function, or concept within PowerShell.

Sintaxis básica:

powershellGet-Help

Ejemplos prácticos:

powershell# Obtener ayuda básica para un comando
Get-Help Get-Proceso

# Obtener ayuda detallada con ejemplos
Get-Help Get-Process -Full

# Ver sólo ejemplos
Get-Help Get-Process -Ejemplos

# Abrir la documentación de ayuda en línea
Get-Help Get-Process -Online

Consejo profesional: Utilice Actualizar-Ayuda periódicamente para asegurarse de que dispone de la documentación de ayuda más reciente6.

2. Get-Command: Descubra los comandos disponibles

When you don’t know which command to use, Get-Command te ayuda encuentre el cmdlet adecuado para su tarea486.

Patrones útiles:

powershell# Listar todos los comandos disponibles
Obtener comando

# Buscar comandos que empiecen por "Get"
Get-Comando Get-*

# Buscar comandos que contengan "Process".
Comando Get *Process*

# Buscar comandos para acciones específicas
Get-Comando Start-*
Obtener comando Detener-*

This approach is particularly helpful when you know what action you want to perform but aren’t sure of the exact command name.

3. Get-Member: Comprender las propiedades de los objetos

PowerShell trabaja con objetos, y Obtener-miembro te muestra qué propiedades y métodos están disponibles para cualquier objeto6.

powershell# Ver propiedades de objetos de proceso
Get-Process | Get-Member

# Ver propiedades de objetos de servicio
Get-Servicio | Get-Miembro

Comandos de gestión de archivos y carpetas

4. Get-ChildItem: Lista el contenido del directorio

Get-ChildItem is PowerShell’s equivalent to the dir pero con muchas más funciones1910.

Uso común:

powershell# Listar el contenido del directorio actual
Get-ChildItem

# Lista de archivos ocultos
Get-ChildItem -Force

# Listado recursivo (incluyendo subdirectorios)
Get-ChildItem -Recurse

# Filtrar por tipo de archivo
Get-ChildItem *.txt

# Buscar archivos en subdirectorios
Get-ChildItem -Path C:\Users -Include *.pdf -Recurse

Alias: También puede utilizar lsdirgci como atajos10.

5. Set-Location: Navegar por directorios

Navega por tu sistema de archivos de forma eficiente con Fijar-Localización10.

powershell# Cambiar a un directorio específico
Establecer-Localización C:³³Usuarios³Documentos

# Ir al directorio principal
Set-Location ..

# Volver a la ubicación anterior
Set-Location -

# Navegar usando alias
cd C:³³Windows
sl C:\Temp

6. Copiar: Copiar archivos y carpetas

En Copiar artículo proporciona potentes funciones de copia de archivos910.

powershell# Copiar un solo archivo
Copiar-elemento "origen.txt" "destino.txt"

# Copiar con protección contra sobrescritura
Copiar-elemento "origen.txt" "copia.txt" -Forzar

# Copiar directorios completos
Copy-Item "C:fuente" "C:copia de seguridad" -Recurse

# Copiar múltiples archivos usando comodines
Copiar-elemento "*.log" "C:\Logs\"

7. Mover: Mover y renombrar archivos

Utilice Mover elemento para mover y renombrar archivos y carpetas1112.

powershell# Mover un archivo a otra ubicación
Mover-elemento "archivoantiguo.txt" "C:³³nuevaLocalización³"

# Cambiar el nombre de un archivo
Mover-elemento "nombreantiguo.txt" "nombrenuevo.txt"

# Mover todos los archivos de un tipo específico
Get-ChildItem *.txt | Move-Item -Destination "C:\TextFiles\"

8. Eliminar elemento: Eliminar archivos y carpetas

Eliminar archivos y directorios de forma segura con Eliminar elemento10.

powershell# Eliminar un solo archivo
Eliminar-elemento "no deseado.txt"

# Eliminar con confirmación
Eliminar-elemento "importante.txt" -Confirmar

# Eliminar directorios recursivamente
Remove-Item "C:³³TempFolder" -Recurse -Force

# Eliminar archivos que coincidan con el patrón
Eliminar-elemento "*.tmp"

Advertencia: Tenga mucho cuidado con Eliminar elementoespecialmente cuando se utiliza -Recurse y -Fuerza ya que los archivos borrados pueden no ser recuperables.

9. Nuevo elemento: Crear archivos y directorios

Crea nuevos archivos y carpetas rápidamente con Nuevo artículo1013.

powershell# Crear un nuevo directorio
New-Item -Name "NewFolder" -ItemType Directorio

# Crear un nuevo archivo
Nuevo-Item -Nombre "nuevoarchivo.txt" -TipoArchivo

# Crear archivo con contenido
New-Item "readme.txt" -ItemType File -Value "Este es el contenido inicial"

# Crear directorios anidados
New-Item "C:\Projects\NNNewProject\Source" -ItemType Directory -Force

Información del sistema y gestión de procesos

10. Get-Process: Monitorizar Procesos en Ejecución

Obtener proceso proporciona información detallada sobre procesos en ejecución en su sistema34.

powershell# Listar todos los procesos en ejecución
Obtener proceso

# Obtener un proceso específico por nombre
Get-Process bloc de notas

# Obtener procesos utilizando comodín
Get-Process nota*

# Ordenar procesos por uso de CPU
Get-Process | Ordenar-Objeto CPU -Descendente

# Obtener los 10 procesos que más memoria consumen
Get-Process | Sort-Object WorkingSet -Descending | Select-Object -First 10

11. Detener Proceso: Terminar procesos

Detener procesos innecesarios o que no responden con Detener el proceso4.

powershell# Detener proceso por nombre
Detener-Proceso -Nombre "bloc de notas"

# Detener proceso por ID
Detener-Proceso -Id 1234

# Detener con confirmación
Detener-Proceso -Nombre "chrome" -Confirmar

# Forzar parada de procesos persistentes
Stop-Process -Nombre "aplicación" -Forzar

12. Get-Service: Administrar servicios de Windows

Supervisar y gestionar Servicios de Windows que se ejecutan en segundo plano41415.

powershell# Listar todos los servicios
Obtener-servicio

# Obtener servicios por estado
Get-Service | Where-Object Estado -eq "En ejecución"

# Obtener servicio específico
Get-Service -Name "Spooler"

# Obtener servicios que empiecen por determinadas letras
Get-Service -Name "Win*"

13. Iniciar-Servicio y Parar-Servicio: Servicios de control

Iniciar y detener los servicios de Windows según sea necesario1415.

powershell# Iniciar un servicio
Iniciar-Servicio -Nombre "Spooler"

# Detener un servicio
Stop-Service -Nombre "Spooler"

# Reiniciar un servicio
Reiniciar-servicio -Nombre "Spooler"

# Iniciar varios servicios
Get-Service -Name "BITS", "Spooler" | Start-Service

Comandos de solución de problemas de red

14. Test-NetConnection: Prueba de conectividad de red

Test-NetConnection is PowerShell’s enhanced version of ping with additional capabilities1617.

powershell# Prueba de conectividad básica
Test-NetConnection google.com

# Probar puerto específico
Test-NetConnection google.com -Puerto 80

# Trazar ruta a destino
Test-NetConnection google.com -TraceRoute

# Probar múltiples conexiones
"google.com", "microsoft.com" | ForEach-Object { Test-NetConnection $_ }

15. Get-NetIPAddress: Ver configuración IP

Compruebe su configuración IP de la red con Get-NetIPAddress1617.

powershell# Mostrar todas las direcciones IP
Get-NetIPAddress

# Mostrar sólo direcciones IPv4
Get-NetIPAddress -AddressFamily IPv4

# Obtener información específica del adaptador
Get-NetIPAddress -InterfaceAlias "Ethernet"

16. Resolve-DnsName: Prueba de resolución DNS

Probar la resolución DNS y buscar información sobre dominios16.

powershell# Búsqueda DNS básica
Resolver-DnsName google.com

# Búsqueda de tipos de registro específicos
Resolver-DnsName google.com -Tipo MX

# Utilizar un servidor DNS específico
Resolve-DnsName google.com -Servidor 8.8.8.8

Comandos de manipulación de contenidos y datos

17. Get-Content: Leer el contenido de un archivo

Leer y visualizar el contenido de los archivos directamente en PowerShell1819.

powershell# Mostrar todo el contenido del archivo
Get-Content "archivo.txt"

# Leer un número específico de líneas
Get-Content "archivogrande.txt" -Head 10

# Supervisar los cambios en el archivo (como tail -f)
Get-Content "live.log" -Wait

# Leer las últimas líneas
Get-Content "recent.log" -Tail 20

18. Archivo de salida: Exportar salida a archivos

Guardar la salida del comando a archivos para su posterior análisis619.

powershell# Guardar lista de procesos en archivo
Get-Process | Archivo de salida "processes.txt"

# Añadir al archivo existente
Get-Date | Out-File "log.txt" -Append

# Guardar con codificación específica
Get-Service | Out-File "services.txt" -Encoding UTF8

19. Seleccionar objeto: Filtrar y dar formato a la salida

Controle qué información se muestra a partir de los resultados del comando2021.

powershell# Mostrar sólo propiedades específicas
Get-Process | Seleccionar-Objeto Nombre, CPU, WorkingSet

# Obtener los primeros resultados
Get-ChildItem | Seleccionar-Objeto -Primeros 5

# Seleccionar valores únicos
Get-Process | Select-Object NombreProceso -Único

Trabajar con PowerShell Pipelines

20. Where-Object: Filtrar resultados

Filtrar resultados de comandos en función de criterios específicos2021.

powershell# Filtrar servicios en ejecución
Get-Service | Where-Object Status -eq "Running"

# Filtrar archivos grandes
Get-ChildItem | Where-Object Length -gt 1MB

# Filtrado complejo con múltiples condiciones
Get-Process | Where-Object {$_.CPU -gt 100 -y $_.WorkingSet -gt 50MB}

21. Ordenar-Objeto: Ordenar resultados

Organizar la producción en orden ascendente o descendente21.

powershell# Ordenar procesos por nombre
Get-Process | Ordenar-Objeto Nombre

# Ordenar por múltiples propiedades
Get-ChildItem | Ordenar objeto LastWriteTime, Nombre

# Ordenar en orden descendente
Get-Process | Sort-Object CPU -Descending

22. ParaCadaObjeto: Procesar cada elemento

Realizar acciones en cada objeto en una tubería1921.

powershell# Procesa cada fichero
Get-ChildItem *.txt | ForEach-Object {
    Write-Host "Procesando: $($_.Nombre)"
}

# Modificar cada objeto
Get-Service | ForEach-Object {
    "$($_.Nombre): $($_.Status)"
}

Gestión de fecha y hora

23. Get-Date: Trabajar con fechas y horas

Recuperar y formatear información sobre la fecha y hora actuales19.

powershell# Obtener fecha y hora actuales
Obtener-fecha

# Formatear fecha de forma específica
Get-Date -Format "aaaa-MM-dd HH:mm:ss"

# Obtener componentes de fecha
(Get-Date).DíaDeLaSemana
(Get-Date).Año

# Calcular fechas futuras
(Get-Date).AddDays(30)

Mejores prácticas esenciales de PowerShell

Utilizar el tabulador

PowerShell’s función de completado de pestañas acelera drásticamente la introducción de comandos17. Press Tab after typing partial command names, parameters, or file paths to auto-complete them.

Aprovechar los alias

PowerShell incluye muchas alias incorporados para comandos comunes5:

  • ls o dir para Get-ChildItem
  • cd para Fijar-Localización
  • cat o tipo para Obtener contenido
  • rm o del para Eliminar elemento

Comandos de prueba seguros

Antes de ejecutar comandos potencialmente destructivos, utilice la función -Y si para ver qué ocurriría sin ejecutar realmente el comando12:

powershellEliminar-elemento *.txt -QuéSi
Detener-Servicio Spooler -QuéSi

Establecer política de ejecución

Por razones de seguridad, PowerShell restringe por defecto la ejecución de scripts22. To run scripts, you may need to modify the execution policy:

powershell# Comprobar política actual
Get-ExecutionPolicy

# Establecer política para el usuario actual
Set-ExecutionPolicy RemoteSigned -Alcance UsuarioActual

Creación de su primer script PowerShell

Once you’re comfortable with individual commands, you can combinarlos en guiones para la automatización2223. Here’s a simple example:

powershell# Guardar como system-info.ps1
Write-Host "Informe de información del sistema" -ForegroundColor Verde
Write-Host "=========================" -ForegroundColor Verde

Write-Host "`nFecha y Hora Actual:" -ForegroundColor Amarillo
Obtener-Fecha

Write-Host "`nLos 5 primeros procesos por CPU:" -ForegroundColor Amarillo
Get-Process | Ordenar-Objeto CPU -Descendente | Seleccionar-Objeto -Primeros 5

Write-Host "`nCuento de servicios en ejecución:" -ForegroundColor Yellow
(Get-Service | Where-Object Status -eq "Running").Count

Write-Host "`nUso del disco:" -ForegroundColor Yellow
Get-WmiObject -Class Win32_LogicalDisk | Select-Object DeviceID, @{Name="Tamaño(GB)";Expression={[math]::Redondeo($_.Tamaño/1GB,2)}}, @{Name="EspacioLibre(GB)";Expression={[math]::Redondeo($_.EspacioLibre/1GB,2)}}

Ruta de aprendizaje avanzada de PowerShell

Once you’ve mastered these essential commands, consider exploring these advanced topics24:

  • Gestión de Active Directory con los cmdlets de AD
  • Administración remota de ordenadores utilizando PowerShell remoting
  • Programación automática de tareas con scripts PowerShell
  • Tratamiento de errores y registro en guiones
  • Módulos y funciones PowerShell para reutilizar el código

Resolución de problemas comunes de PowerShell

Errores de la política de ejecución

If you encounter “execution of scripts is disabled” errors, check and modify your execution policy22:

powershellGet-ExecutionPolicy -Lista
Set-ExecutionPolicy RemoteSigned -Alcance UsuarioActual

Errores de permiso denegado

Muchas tareas administrativas requieren privilegios elevados. Ejecute siempre PowerShell como administrador cuando trabaje con:

  • Servicios del sistema
  • Modificaciones del registro
  • Configuraciones de red
  • Gestión de cuentas de usuario

Trayectoria y ubicación

When commands can’t find files or directories, verify your current location and use full paths:

powershellObtener-Localización
Establecer-Localización C:\SuRutaDeseada

Conclusión: Potencie su experiencia Windows

Dominar estos comandos esenciales de PowerShell le transforma de un usuario pasivo de Windows en un administrador activo del sistema capaz de automatizar tareas complejas y resolver problemas de forma eficaz.13. The estructura de comandos verbo-sustantivo hace que el aprendizaje de PowerShell sea intuitivo, mientras que sus potentes funciones de canalización permiten un sofisticado procesamiento de datos y gestión de sistemas.24.

Empiece practicando estas órdenes en un entorno seguro, aumentando gradualmente su confianza y explorando escenarios más avanzados. Recuerda que Obtenga ayuda está siempre disponible para proporcionar información detallada sobre cualquier comando, y el tabulador hace que la introducción de comandos sea más rápida y precisa.725.

Whether you’re managing files, monitoring system performance, troubleshooting network issues, or automating repetitive tasks, PowerShell provides the tools you need to work more efficiently and effectively with Windows systems17. The investment in learning PowerShell pays dividends in increased productivity and enhanced system administration capabilities that will serve you throughout your computing career.

No comments

Dejar una respuesta

Please enter your comment!
Please enter your name here

Español
English
English
Deutsch
Español
Italiano
Français
Salir de la versión móvil