Descubrimiento y ayuda integrada
Abstract
Esta lección introduce las herramientas de autodescubrimiento de PowerShell: cómo
usar
para explorar el entorno y Get-Command Get-Command para aprender directamente desde la terminal. Con estos comandos podrás encontrar
cmdlets, entender sus parámetros y acceder a ejemplos sin depender de documentación
externa.
Get-Help Get-Help
También aprenderás a reconocer patrones en la convención Verbo-Sustantivo y a
consultar temas conceptuales about_*, que explican conceptos clave del
lenguaje y del entorno. Estas prácticas te permitirán navegar y ampliar el ecosistema de
PowerShell con autonomía, adoptando una mentalidad exploratoria centrada en descubrir
antes que memorizar.
Buscar y explorar comandos con Get-Command
sirve para descubrir qué existe en tu
entorno PowerShell: cmdlets, funciones, scripts o alias. Puedes filtrar por nombre,
verbo o sustantivo, usar comodines y explorar las acciones disponibles sin
recordar nombres exactos. Devuelve objetos Get-Command Get-Command (y
derivados como [CommandInfo] [CommandInfo] , [CmdletInfo] [CmdletInfo]
o [FunctionInfo] [FunctionInfo] ) que puedes inspeccionar.
[ApplicationInfo] [ApplicationInfo]
$cmd = Get-Command -Name Get-Command
Get-Member -InputObject $cmd
Get-Command -Verb Push
Get-Command -Noun *Item
# Cuando no recuerdes el nombre exacto
Get-Command -Name *location* # Buscar comandos relacionados con "location"# Filtrar por tipo y módulo
Get-Command -CommandType Cmdlet -Module Microsoft.PowerShell.Management
# Ver sintaxis de un comando específico
Get-Command -Name Copy-Item -Syntax
# Buscar por parámetro (¿qué cmdlets tienen -Force?)
Get-Command -ParameterName Force
# Si sólo recuerdas el tipo de un parámetro
Get-Command -ParameterType [switch] ¿Qué acabamos de hacer?
-
devuelve un objetoGet-Command -Name Get-CommandGet-Command -Name Get-Command, que puedes inspeccionar para conocer sus propiedades. Por ejemplo,[CommandInfo][CommandInfo]lista sus parámetros.(Get-Command -Name Get-Command).Parameters.Keys(Get-Command -Name Get-Command).Parameters.Keys -
muestra los miembros (propiedades y métodos) del objeto devuelto. Si hacesGet-MemberGet-Member, verás a qué tipo pertenece (Get-Member -InputObject $cmdGet-Member -InputObject $cmdo[FunctionInfo][FunctionInfo]) y propiedades como[CmdletInfo][CmdletInfo],NameNameoModuleNameModuleName.DefinitionDefinition - Filtrado por verbo y sustantivo (
/-Verb-Verb). PowerShell nombra cmdlets como Verbo-Sustantivo (-Noun-Noun,Get-ItemGet-Item, etc.).Push-LocationPush-Locationlista acciones (“qué hace”) y-Verb-Verbel “sobre qué”. Ejemplos:-Noun-NounoGet-Command -Verb PushGet-Command -Verb Push. Además, usaGet-Command -Noun *ItemGet-Command -Noun *Item(-CommandType-CommandTypeCmdlet/Function/Alias/Application/ExternalScript) ypara acotar por origen o tipo.-Module-Module - Comodines: usa
para buscar sin recordar el nombre exacto.**encuentraGet-Command *location*Get-Command *location*,Get-LocationGet-Location,Set-LocationSet-Location, etc. Es insensible a mayúsculas y puedes combinar filtros, por ejemplo:Push-LocationPush-Location. Combínalo conGet-Command *item* -CommandType Cmdlet -Module Microsoft.PowerShell.ManagementGet-Command *item* -CommandType Cmdlet -Module Microsoft.PowerShell.Management/-CommandType-CommandTypey usa búsquedas explícitas con-Module-Moduley combina-Name-Name/-CommandType-CommandTypepara salidas más legibles.-Module-Module - Buscar por parámetros — cuando recuerdas un parámetro pero no el cmdlet, prueba
o-ParameterName-ParameterName(por ejemplo,-ParameterType-ParameterTypeo[switch][switch]) para localizar candidatos.SwitchParameterSwitchParameter - Ver uso rápido —
muestra las firmas del comando sin abrir la ayuda completa; útil para recordar parámetros posicionales y combinaciones rápidas.-Syntax-Syntax
Adopta la convención Verbo-Sustantivo
Nombra tus funciones y scripts como Verbo-Sustantivo. Así
y la ayuda integrada podrán descubrir
tus comandos fácilmente.
Get-Command Get-Command
Consultar documentación y ejemplos con Get-Help
muestra la documentación integrada de cualquier
comando. Es la herramienta principal para entender cómo usar un cmdlet, con sus
parámetros, ejemplos y vínculos a la documentación en línea. También incluye
capítulos conceptuales llamados Get-Help Get-Help about_*, que explican temas generales del
lenguaje y del entorno de PowerShell (por ejemplo, about_Arrays, about_Operators o about_Execution_Policies).
Antes de comenzar
Si es la primera vez que usas PowerShell, puede que necesites descargar o actualizar
la ayuda local con . Esto permite usar
Update-Help Update-Help sin conexión.
Get-Help Get-Help
Update-Help -UICulture en-US Idiomas disponibles
Usamos en-US porque es el idioma por defecto de PowerShell. Puedes
cambiarlo a otro idioma (por ejemplo, es-ES), pero ten en cuenta
que no todos los módulos ofrecen traducción. Si intentas actualizar toda la
ayuda en español, es común que algunos módulos fallen o queden en inglés.
# Ayuda rápida (resumen, parámetros o ejemplos)
Get-Help -Name Get-Help
Get-Help -Name Get-ChildItem -Examples
Get-Help -Name Get-Command -Full
# Abrir documentación en el navegador (si está disponible)
Get-Help -Name Get-ChildItem -Online
# Explorar temas conceptuales ("about_*")
Get-Help -Name about_Comparison_Operators
Get-Help -Name about_* # Listar todos los temas conceptuales disponibles
Get-Culture -? # Ayuda rápida para cmdlets individuales
Get-Help -Name Out-String -Parameter Stream # Ayuda para un parámetro específico ¿Qué acabamos de hacer?
-
— Muestra la ayuda del propio cmdletGet-Help -Name Get-HelpGet-Help -Name Get-Help: estructura de la salida, parámetros disponibles y cómo profundizar (por ejemplo, conGet-HelpGet-Helpo-Examples-Examples).-Full-Full-
- Presenta solo los ejemplos prácticos del comando. Es la forma más rápida de ver usos reales sin tener que leer toda la documentación.-Examples-Examples -
— Muestra la documentación completa: descripción, sintaxis, parámetros (con tipos y validaciones), entradas/salidas y notas adicionales.-Full-Full -
- Abre el artículo correspondiente en Microsoft Learn o Docs en el navegador, útil cuando quieres ver formato enriquecido o notas actualizadas.-Online-Online
-
-
about_*— Temas conceptuales del lenguaje y la plataforma (pipeline, operadores, alias, etc.). - Comodines - Cuando no recuerdes el nombre exacto, usa
para buscar candidatos.** -
- Muestra la ayuda rápida de cualquier comando (parámetros y sintaxis principales).<Comando> -?<Comando> -? -
- Para ir directo a parámetros específicos.Get-Help <Comando> -Parameter <Nombre>Get-Help <Comando> -Parameter <Nombre>
Nota
Ayuda basada en comentarios (Comment-Based Help)
<#
.SYNOPSIS
Breve descripción del script.
.DESCRIPTION
Explicación más detallada del script.
.PARAMETER Path
Descripción del parámetro.
.EXAMPLE
Ejemplo de uso del script.
#>
param($Path)
about_Comment_Based_Help
# Mostrar ayuda integrada en un script
Get-Help .\path\to\script.ps1 -Full Tip
Añadir ayuda a tus scripts no solo facilita su uso futuro, también permite a
otras personas usar
directamente sobre tus archivos sin abrir
el código.
Get-Help Get-Help
Piensa rápido
Get- y tengan Noun Item. Usa
Get-Help Get-Help para ver sus ejemplos de uso.
Piensa rápido
-LiteralPath con
Get-Command -ParameterName LiteralPath Get-Command -ParameterName LiteralPath . Elige uno y revisa
Get-Help <Comando> -Parameter LiteralPath Get-Help <Comando> -Parameter LiteralPath .
Conclusiones
En esta lección aprendiste a autodescubrir PowerShell desde la terminal. Comprendiste cómo Get-Command Get-Command te permite explorar los
cmdlets disponibles, filtrar por verbo o sustantivo e inspeccionar sus propiedades.
También viste cómo Get-Help Get-Help ofrece documentación integrada,
ejemplos y temas conceptuales about_* para profundizar sin salir del
entorno.
Puntos clave
-
descubre qué comandos existen y te permite filtrarlos por nombre, verbo o sustantivo.Get-CommandGet-Command -
explica cómo usar cada comando, muestra ejemplos y puede abrir documentación en línea.Get-HelpGet-Help - Los temas
about_*contienen guías conceptuales sobre operadores, alias, pipeline y otros fundamentos.
¿Qué nos llevamos?
PowerShell está diseñado para el descubrimiento progresivo: cada herramienta revela pistas sobre la siguiente. Conocer y usar Get-Command Get-Command
y Get-Help Get-Help no solo te hace más independiente, sino que te
enseña a aprender desde la propia terminal. En lugar de memorizar comandos, adoptas una
mentalidad exploratoria, apoyada en documentación viva y accesible. A partir de aquí,
puedes seguir usando estas herramientas para explorar nuevos módulos y comandos que
vayas encontrando en tu entorno.
¿Con ganas de más?
Referencias recomendadas
- “Using the help system” (pp. 25–41) en Learn PowerShell in a month of lunches, fourth edition: Covers windows, linux, and MacOS por Travis PlunkPresenta el sistema de ayuda de PowerShell como la clave de su descubribilidad. Explica cómo actualizar la ayuda (
,Update-HelpUpdate-Help), las diferencias entreSave-HelpSave-HelpyHelpHelp(incluido el paginado yGet-HelpGet-Help), y cómo usar comodines para encontrar comandos desde la propia terminal. Enseña a interpretar la ayuda: parameter sets, parámetros obligatorios/opcionales, posicionales, tipos y arrays, y switches como-Online-Online. Muestra cómo extraer ejemplos con-Force-Forcey cómo consultar temas conceptuales-Examples-Examplesabout_(por ejemplo,about_CommonParameters). Cierra con ejercicios prácticos que te obligan a resolver tareas usando la ayuda, reforzando la idea de aprender a aprender dentro de PowerShell en lugar de memorizar comandos o depender del buscador. Ideal si quieres ganar autonomía para descubrir cmdlets, entender su sintaxis real y documentarte sin salir de la terminal.
Referencias adicionales
- “ Chapter 2 — The Help system ” en Microsoft Learn / PowerShell
Capítulo introductorio que defiende que dominar el sistema de ayuda es clave en PowerShell: las personas expertas no memorizan, descubren y aprenden en el momento. Presenta los tres cmdlets nucleares para el descubrimiento:
,Get-HelpGet-HelpyGet-CommandGet-Command.Get-MemberGet-MemberResume cómo usar
(Get-HelpGet-Help,-Full-Full,-Examples-Examples,-Online-Online) y la descarga inicial con-Parameter-Parameter; cómo interpretar la sintaxis y los parameter sets (posicionalidad y switches).Update-HelpUpdate-Help