Fundamentos de Cmdlet de PowerShell

Cmdlet (pronunciado de manera similar a "command-let")Es la unidad de comando básica en PowerShell, un comando pequeño implementado por Microsoft basado en el framework .NET.

Los Cmdlets se diferencian de los programas externos en los shells tradicionales, por ejemplo.exeo.batarchivos, sino que están integrados en el entorno de ejecución de PowerShell.

Cada Cmdlet realiza una tarea específica, como obtener datos, establecer propiedades, crear objetos, exportar archivos, etc.

Regla de nomenclatura de Cmdlet: verbo-sustantivo

En PowerShell, la nomenclatura de todos los Cmdlets sigue un formato unificado"verbo-sustantivo"formato, por ejemplo:

  • Get-Process: obtener información de procesos
  • Set-Date: establecer la fecha del sistema
  • New-Item: crear un nuevo elemento (como archivo o carpeta)
  • Remove-Service: eliminar un servicio

Este método de nomenclatura es intuitivo y uniforme, lo que facilita su memorización y búsqueda.


Estructura básica de sintaxis de Cmdlet

La estructura de sintaxis de un Cmdlet generalmente es la siguiente:

verbo-sustantivo [-nombre-parámetro valor-parámetro] [-parámetro switch]

Ejemplo:

Get-Service -Name W32Time

Explicación:

  • Get-Service: obtener objetos de servicio
  • -Name W32Time: especifica el nombre del servicio a consultar comoW32Time

Otro ejemplo:

Stop-Process -Id 1234 -Force
  • -Ides un parámetro con valor
  • -Forcees un parámetro switch, no necesita especificar un valor

Combinación de parámetros y canalizaciones

Los Cmdlets admitenparámetros posicionales、parámetros con nombreyentrada por canalización. Esto permite que los comandos se combinen de manera flexible para construir flujos de trabajo complejos.

Ejemplo 1: forma de especificar parámetros

Get-Process -Name notepad

Ejemplo 2: pasar mediante canalización

"notepad" | Get-Process -Name

Ejemplo 3: pasar el objeto por canalización a otro Cmdlet

Get-Process notepad | Stop-Process

En el ejemplo anterior,Get-Processse obtiene el objeto del proceso notepad y luego se pasa mediante canalización aStop-Processpara terminarlo.


Ver la información de ayuda de Cmdlet

PowerShell proporciona un sistema de ayuda completo; se puede usarGet-Helppara consultar el uso de cualquier Cmdlet:

Get-Help Get-Process

Para ver más descripciones de parámetros y ejemplos, se puede añadir-Detailedo-Examples:

Get-Help Get-Process -Examples

Si es la primera vez que se usa PowerShell, se recomienda ejecutar una vez el siguiente comando para actualizar la ayuda local:

Update-Help

Tabla de referencia rápida de Cmdlets básicos comunes

Cmdlet Descripción de la función
Get-Command Ver todos los comandos disponibles
Get-Help Ver la información de ayuda de un comando
Get-Process Obtener la lista de procesos
Get-Service Obtener la lista de servicios
Start-Service Iniciar servicio
Stop-Service Detener servicio
Set-ExecutionPolicy Establecer la directiva de ejecución
New-Item Crear un nuevo archivo o carpeta
Remove-Item Eliminar archivo o carpeta
Copy-Item Copiar archivo o carpeta
Move-Item Mover archivo o carpeta
Clear-Host Limpiar la pantalla, similar acls

Ejemplo práctico: operaciones con archivos

Crear una carpeta:

New-Item -Path "C:\TestFolder" -ItemType Directory

Crear un archivo de texto en ese directorio:

New-Item -Path "C:\TestFolder\demo.txt" -ItemType File

Escribir el contenido en el archivo:

Set-Content -Path "C:\TestFolder\demo.txt" -Value "Hello PowerShell"

Leer el contenido del archivo:

Get-Content -Path "C:\TestFolder\demo.txt"

Resumen y sugerencias de estudio

  • El Cmdlet es la unidad central de PowerShell; cada Cmdlet es un ejecutor de tareas con una función claramente definida.
  • La norma de nomenclatura unificada "verbo-sustantivo" hace que los Cmdlets sean predecibles y fáciles de aprender.
  • La combinación de canalizaciones, el sistema de parámetros y el modelo de objetos hace que los Cmdlets destaquen en el procesamiento de datos y la automatización.
  • Dominar los Cmdlets comunes y combinarlos con operaciones de objetos es un punto de partida importante para aprender PowerShell.

Se recomienda que los principiantes practiquen en los siguientes aspectos:

  1. UsarGet-Commandpara explorar todos los comandos disponibles
  2. junto conGet-Helpaprender a consultar el uso de los comandos
  3. UtilizarNew-ItemyGet-Contentcomandos como estos para realizar operaciones locales con archivos
  4. Intenta a menudo combinar comandos mediante canalizaciones para procesar datos
Otras extensiones