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


Сведения об истории

Краткое описание

Описывает, как получить и выполнить команды в журнале команд.

Полное описание

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

В PowerShell есть два разных поставщика журнала: встроенный журнал и журнал, управляемый модулем PSReadLine . Журналы управляются отдельно, но обе истории доступны в сеансах, где загружается PSReadLine .

Использование журнала PSReadLine

Журнал PSReadLine отслеживает команды, используемые во всех сеансах PowerShell. Журнал записывается в центральный файл для каждого узла. Этот файл журнала доступен для всех сеансов и содержит весь прошлый журнал. Журнал не удаляется по завершении сеанса. Кроме того, этим журналом нельзя управлять с помощью *-History командлетов. Дополнительные сведения см. в разделе about_PSReadLine.

Использование встроенного журнала сеансов

Встроенный журнал отслеживает только команды, используемые в текущем сеансе. Журнал недоступен для других сеансов и удаляется по завершении сеанса.

Командлеты журнала

PowerShell содержит набор командлетов, которые управляют журналом команд.

Командлет Псевдоним Описание
Get-History h Возвращает журнал команд.
Invoke-History r Выполняет команду в журнале команд.
Add-History Добавляет команду в журнал команд.
Clear-History clhy Удаляет команды из журнала команд.

Сочетания клавиш для управления журналом

В консоли PowerShell можно использовать следующие сочетания клавиш для управления журналом команд.

  • UpArrow — отображает предыдущую команду.
  • DownArrow — отображает следующую команду.
  • F7 — отображает журнал команд.
  • ESC — для скрытия журнала.
  • F8 — находит команду. Введите один или несколько символов и нажмите клавишу F8. Нажмите клавишу F8 еще раз для следующего экземпляра.
  • F9 — поиск команды по идентификатору журнала. Введите идентификатор журнала и нажмите клавишу F9. Нажмите клавишу F7 , чтобы найти идентификатор.
  • #<string>Tab — Поиск журнал для *<string>* и возвращает последнее совпадение. Если нажать клавишу TAB несколько раз, будет выполняться циклическое перебора соответствующих элементов в журнале.

Примечание

Эти ключевые привязки реализуются ведущим приложением консоли. Другие приложения, такие как Visual Studio Code или Терминал Windows, могут иметь разные привязки ключей. Привязки могут быть переопределены модулем PSReadLine. PSReadLine загружается автоматически при запуске сеанса PowerShell. При загрузке PSReadLine F7 и F9 не привязаны ни к одной функции. PSReadLine не предоставляет эквивалентные функциональные возможности. Дополнительные сведения см. в разделе about_PSReadLine.

MaximumHistoryCount

Переменная $MaximumHistoryCount предпочтения определяет максимальное количество команд, сохраняемых PowerShell в журнале команд. Значение по умолчанию — 4096.

Например, следующая команда снижает $MaximumHistoryCount значение до 100 команд:

$MaximumHistoryCount = 100

Чтобы применить параметр, перезапустите PowerShell.

Чтобы сохранить новое значение переменной для всех сеансов PowerShell, добавьте инструкцию присваивания в профиль PowerShell. Дополнительные сведения о профилях см. в разделе about_Profiles.

Дополнительные сведения о переменной предпочтения см. в $MaximumHistoryCountразделе about_Preference_Variables.

Порядок команд в журнале

Команды добавляются в журнал по завершении выполнения команды, а не при вводе команды. Если выполнение команд занимает некоторое время или команды выполняются во вложенной строке, команды могут оказаться неупорядоченными в журнале. Команды, выполняемые во вложенной строке, выполняются только при выходе из уровня командной строки.

См. также: