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


about_History

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

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

Подробное описание

При вводе команды в командной строке 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.

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

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

См. также раздел