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


Get-History

Возвращает список команд, введенных во время текущего сеанса.

Синтаксис

Get-History
   [[-Id] <Int64[]>]
   [[-Count] <Int32>]
   [<CommonParameters>]

Описание

Командлет Get-History получает журнал сеансов, то есть список команд, введенных во время текущего сеанса.

PowerShell автоматически сохраняет журнал каждого сеанса. Количество записей в журнале сеансов определяется значением переменной предпочтения $MaximumHistoryCount. Начиная с Windows PowerShell 3.0, значение по умолчанию — 4096. По умолчанию файлы журнала сохраняются в домашнем каталоге, но вы можете сохранить файл в любом расположении. Дополнительные сведения о возможностях истории в PowerShell см. в about_History.

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

Примеры

Пример 1. Получение журнала сеансов

Этот пример получает записи в журнале сеансов. По умолчанию отображается каждая команда и его идентификатор, указывающий порядок их выполнения.

Get-History

Пример 2. Получение записей, включающих строку

Этот пример получает записи в журнале команд, включающие строку "service". Первая команда получает все записи в журнале сеансов. Оператор конвейера (|) передает результаты командлету Where-Object, который выбирает только команды с сервисом.

Get-History | Where-Object {$_.CommandLine -like "*Service*"}

Пример 3. Экспорт записей журнала до определенного идентификатора

В этом примере возвращается пять последних записей журнала, заканчивающихся записью 7. Оператор конвейера передает результат командлету Export-Csv, который форматирует журнал как разделенный запятыми текст и сохраняет его в файле History.csv. Файл содержит данные, отображаемые при форматировании журнала в виде списка. Сюда входят состояние и время начала и окончания команды.

Get-History -ID 7 -Count 5 | Export-Csv -Path History.csv

Пример 4. Отображение последней команды

Этот пример получает последнюю команду в журнале команд. Последняя команда является последней введенной командой. Эта команда использует параметр Count для отображения только одной команды. По умолчанию Get-History получает самые последние команды. Эта команда может быть сокращена до "h -c 1" и эквивалентна нажатию клавиши СТРЕЛКА ВВЕРХ.

Get-History -Count 1

Пример 5. Отображение всех свойств записей в журнале

В этом примере отображаются все свойства записей в журнале сеансов. Оператор конвейера передает результаты команды Get-History командлету Format-List, который отображает все свойства каждой записи журнала. Сюда входят идентификатор, состояние и время начала и окончания команды.

Get-History | Format-List -Property *

Параметры

-Count

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

По умолчанию в Windows PowerShell 2.0 Get-History получает 32 последних записей.

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

-Id

Задает массив идентификаторов записей в журнале сеансов. Get-History получает только указанные записи. Если в команде используются параметры идентификатора и счетчика, Get-History получает последние записи, заканчивающиеся записью, указанной параметром идентификатора.

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

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

Int64

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

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

HistoryInfo

Этот командлет возвращает объект журнала для каждого элемента журнала, который он получает.

Примечания

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

  • Все платформы:
    • h
    • history
    • ghy

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

Начиная с Windows PowerShell 3.0 значение по умолчанию переменной предпочтения $MaximumHistoryCount равно 4096. В Windows PowerShell 2.0 значение по умолчанию — 64. Дополнительные сведения об переменной $MaximumHistoryCount см. в about_Preference_Variables.