Compartir a través de


Invoke-History

Ejecuta comandos desde el historial de la sesión.

Sintaxis

Invoke-History
      [[-Id] <String>]
      [-WhatIf]
      [-Confirm]
      [<CommonParameters>]

Description

El Invoke-History cmdlet ejecuta comandos desde el historial de sesiones. Puede pasar objetos que representan los comandos de Get-History a Invoke-History, o bien puede identificar comandos en el historial actual mediante su número de identificador . Para buscar el número de identificación de un comando, use el Get-History cmdlet .

El historial de sesiones se administra independientemente del historial mantenido por el módulo PSReadLine . Ambos historiales están disponibles en sesiones donde se carga PSReadLine . Este cmdlet solo funciona con el historial de sesiones. Para obtener más información, consulte about_PSReadLine.

Ejemplos

Ejemplo 1: Ejecutar el comando más reciente del historial

En este ejemplo se ejecuta el último comando, o más reciente, en el historial de sesiones. Puede abreviar este comando como r, el alias de Invoke-History.

Invoke-History

Ejemplo 2: Ejecutar el comando que tiene un identificador especificado

En este ejemplo se ejecuta el comando en el historial de sesiones con el identificador 132. Dado que el nombre del parámetro Id es opcional, puede abreviar este comando como el siguiente: Invoke-History 132, ihy 132o r 132.

Invoke-History -Id 132

Ejemplo 3: Ejecutar el comando más reciente mediante el texto del comando

En este ejemplo se ejecuta el comando más reciente Get-Process en el historial de sesiones. Al escribir caracteres para el parámetro Id , Invoke-History ejecuta el primer comando que encuentra que coincide con el patrón, empezando por los comandos más recientes.

Invoke-History -Id get-pr

Nota:

La coincidencia de patrones no distingue mayúsculas de minúsculas, pero el patrón coincide con el principio de la línea.

Ejemplo 4: Ejecución de una secuencia de comandos desde el historial

En este ejemplo se ejecutan los comandos de 16 a 24. Dado que solo puede enumerar un valor id , el comando usa el ForEach-Object cmdlet para ejecutar el Invoke-History comando una vez para cada valor id .

16..24 | ForEach-Object {Invoke-History -Id $_ }

Ejemplo 5

En este ejemplo se ejecutan los siete comandos del historial que terminan con el comando 255 (de 249 a 255). Usa el Get-History cmdlet para recuperar los comandos. Dado que solo puede enumerar un valor id , el comando usa el ForEach-Object cmdlet para ejecutar el Invoke-History comando una vez para cada valor id .

Get-History -Id 255 -Count 7 | ForEach-Object {Invoke-History -Id $_.Id}

Parámetros

-Confirm

Le solicita su confirmación antes de ejecutar el cmdlet.

Tipo:SwitchParameter
Alias:cf
Posición:Named
Valor predeterminado:False
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

-Id

Especifica el identificador de un comando en el historial. Puede escribir el número de identificador del comando o los primeros caracteres del comando.

Si escribe caracteres, Invoke-History primero coincide con los comandos más recientes. Si omite este parámetro, Invoke-History ejecuta el último comando o más reciente. Para buscar el número de identificador de un comando, use el Get-History cmdlet .

Tipo:String
Posición:0
Valor predeterminado:None
Requerido:False
Aceptar entrada de canalización:True
Aceptar caracteres comodín:False

-WhatIf

Muestra lo que sucedería si se ejecutara el cmdlet. El cmdlet no se ejecuta.

Tipo:SwitchParameter
Alias:wi
Posición:Named
Valor predeterminado:False
Requerido:False
Aceptar entrada de canalización:False
Aceptar caracteres comodín:False

Entradas

String

Puede canalizar un identificador de historial a este cmdlet.

Salidas

None

Este cmdlet no devuelve ninguna salida propia, pero los comandos que ejecuta pueden devolver su propia salida.

Notas

PowerShell incluye los siguientes alias para Invoke-History:

  • Todas las plataformas:
    • ihy
    • r

El historial de la sesión es una lista de los comandos escritos durante la sesión. El historial de la sesión representa el orden de ejecución, el estado y los tiempos de inicio y finalización del comando. Al escribir cada comando, PowerShell lo agrega al historial para que pueda reutilizarlo. Para obtener más información sobre el historial de sesiones, consulte about_History.