Поделиться через


Invoke-History

Выполняет команды из журнала сеанса.

Синтаксис

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

Описание

Командлет Invoke-History выполняет команды из журнала сеансов. Вы можете передать объекты, представляющие команды из Get-History Invoke-History, или определить команды в текущем журнале с помощью их номера идентификатора . Чтобы найти идентификационный номер команды, используйте Get-History командлет.

Журнал сеансов управляется отдельно от журнала, поддерживаемого модулем PSReadLine . Обе истории доступны в сеансах, где загружается PSReadLine . Этот командлет работает только с журналом сеансов. Дополнительные сведения см. в about_PSReadLine.

Примеры

Пример 1. Выполнение последней команды в журнале

В этом примере выполняется последняя или последняя команда в журнале сеансов. Эту команду можно аббревиатировать как rпсевдоним для Invoke-History.

Invoke-History

Пример 2. Выполните команду с указанным идентификатором

В этом примере выполняется команда в журнале сеансов с идентификатором 132. Так как имя параметра Id является необязательным, эту команду можно сократить следующим образом: Invoke-History 132или ihy 132r 132.

Invoke-History -Id 132

Пример 3. Выполнение последней команды с помощью текста команды

В этом примере выполняется последняя Get-Process команда в журнале сеансов. При вводе символов для параметра Id выполняет первую команду, Invoke-History которая находит совпадение с шаблоном, начиная с последних команд.

Invoke-History -Id get-pr

Примечание.

Сопоставление шаблонов не учитывает регистр, но шаблон соответствует началу строки.

Пример 4. Выполнение последовательности команд из журнала

В этом примере выполняются команды от 16 до 24. Так как можно указать только одно значение идентификатора, команда использует ForEach-Object командлет для выполнения Invoke-History команды один раз для каждого значения идентификатора.

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

Пример 5

В этом примере выполняются семь команд в журнале, заканчивающиеся командой 255 (249–255). Он использует Get-History командлет для получения команд. Так как можно указать только одно значение идентификатора, команда использует ForEach-Object командлет для выполнения Invoke-History команды один раз для каждого значения идентификатора.

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

Параметры

-Confirm

Запрос подтверждения перед выполнением командлета.

Тип:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

-Id

Указывает идентификатор команды в журнале. Вы можете ввести идентификатор команды или первые несколько символов команды.

Если вы вводите символы, Invoke-History сначала соответствует последним командам. Если этот параметр не указан, Invoke-History выполняется последняя или последняя команда. Чтобы найти идентификатор команды, используйте Get-History командлет.

Тип:String
Position:0
Default value:None
Обязательно:False
Принять входные данные конвейера:True
Принять подстановочные знаки:False

-WhatIf

Показывает, что произойдет при запуске командлета. Командлет не выполняется.

Тип:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Обязательно:False
Принять входные данные конвейера:False
Принять подстановочные знаки:False

Входные данные

String

Идентификатор журнала можно передать этому командлету.

Выходные данные

None

Этот командлет не возвращает собственные выходные данные, но команды, которые он выполняет, могут возвращать собственные выходные данные.

Примечания

Windows PowerShell включает следующие псевдонимы для Invoke-History:

  • ihy
  • r

Журнал сеанса — это список команд, введенных за время сеанса. В журнале сеанса представлен порядок выполнения, состояние, время начала и завершения выполнения команды. При вводе каждой команды PowerShell добавляет его в журнал, чтобы его можно было повторно использовать. Дополнительные сведения о журнале сеансов см. в about_History.