Как просмотреть историю команд PowerShell в Windows 10

Windows PowerShell имеет встроенную функцию « История(History) », которая запоминает все команды, которые вы выполняли при ее использовании. Хотя он должен помнить историю(History) активного сеанса, я вижу, что он сохраняет больше. В этом посте я покажу, как можно просмотреть историю(History) команд PowerShell и использовать ее с умом.

См. историю команд PowerShell.

Как просмотреть историю команд PowerShell(PowerShell Command History)

Самым значительным преимуществом наличия функции «История» является то, что вам не нужно снова вводить текст, чтобы выполнить конкретную команду, которую вы уже выполнили один раз. Однако рекурсия по сотням команд не очень помогает. Как насчет поиска по ним или запуска определенной команды, которую вы помните лишь частично? Следуйте этим методам.

  1. Клавиатурный метод
  2. Поиск вперед(Search Forward) или назад(Backward) в истории PowerShell(PowerShell History)
  3. Посмотреть(View) всю историю этой сессии
  4. Вызов(Invoke) определенной команды из истории(History) команд PowerShell
  5. Поиск в истории

В конце мы также объяснили, как вы можете очистить, экспортировать и импортировать историю (History)команды PowerShell  . Очень удобно, если вам нужно часто выполнять одни и те же команды.

1] Метод клавиатуры

Поиск с помощью F8 в PowerShell для поиска

Я уверен, что вы использовали командную строку(Command Prompt) один раз, если вы использовали Windows в течение некоторого времени. Если вы используете клавиши со стрелками вверх и вниз, вы можете перемещаться назад и вперед по выполненным командам. То же самое относится и к PowerShell . Но вот поворот. Если вы помните команду частично, вот как искать.

  • Введите(Type) часть команды, которую вы помните
  • Нажмите F8(Press F8) и продолжайте нажимать, пока не найдете.
  • Критерий поиска будет выделен флуоресцентно-зеленым цветом, а затем остальная часть команды.

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

2] Поиск вперед(Search Forward) или назад(Backward) в истории(History)

Поиск PowerShell вперед назад

Если вы хотите выполнить поиск вперед или назад в истории(History) , вы можете использовать Ctrl + R и Ctrl + S. Первая позволяет выполнять поиск назад в истории(History) , а вторая — вперед. Как только вы воспользуетесь сочетанием клавиш, внизу должен появиться фрагмент (bck-i-search или fwd-i-search). Введите то, что вы хотите найти, и даже если текст принадлежит где-то в середине команды, он будет искать его. Это намного лучше по сравнению с методом F8, который мы использовали выше.

3] Просмотрите(View) всю историю(History) команд PowerShell для этого сеанса.

История команд PowerShell

Введите History(Type History) и нажмите клавишу Enter . Вы должны увидеть все команды, которые вы выполнили в текущем сеансе. Хотя вы можете просматривать команды, выполненные в предыдущем сеансе, с помощью клавиш со стрелками, в истории(History) их не будет. Если вы нажмете клавишу «H»(key “H”) и нажмете Enter, откроется история(History) команд. Считайте это ярлыком для команды «  История»(History) .

4] Вызвать(Invoke) определенную команду из истории

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

  • Обратите внимание на идентификатор команды, которую вы хотите выполнить.
  • Введите Invoke-History <ID>. Замените <ID> точным номером
  • Нажмите(Press) клавишу Enter(Enter Key) , и она выполнит эту команду из истории(History) .

5] Поиск в истории

Выберите строку Получить историю Команда PowerShell

Самый простой способ поиска в истории(History) команд — использовать метод Select-String в History Output .

  • Введите следующее и замените Get на термин, который вы хотите найти.
  • Получить-История | Select-String -Pattern «Получить».
  • Он покажет все команды, которые соответствуют командам поиска.

Поскольку вы получаете идентификатор, вы можете использовать команду Invoke History , чтобы выполнить ее мгновенно.

Очистить, экспортировать(Export) и импортировать историю PowerShell(Import PowerShell History)

Чтобы удалить все команды из History , все, что вам нужно сделать, это выполнить команду « Clear-History ». Обратите внимание, что даже после этого вы все равно можете получить доступ к команде с помощью клавиш со стрелками вверх и вниз.

Чтобы экспортировать все команды(export all the commands) , вы можете использовать  формат Export-Clixml или Export-CSV( Export-Clixml or  Export-CSV) . Вот пример команды

Get-History | Export-Clixml -Path <Path>\PSHistorycommands.xml

Get-History | Export-Csv -Path <Path>\PSHistorycommands.csv

Чтобы импортировать эти команды обратно в другой или новый сеанс( import these commands back to another or new session) , используйте следующую команду.

Add-History -InputObject (Import-Clixml -Path <Path>\PSHistorycommands.xml)

Add-History -InputObject (Import-Csv -Path <Path>\PSHistorycommands.csv)

Вы можете открыть этот файл CSV или XML в любое время, чтобы мгновенно просмотреть историю(History) команд PowerShell . Это в значительной степени резюмирует почти все , что касается истории команд PowerShell(PowerShell Command History) , и того, как вы можете повторно использовать их с помощью обременений, поиска или импорта их обратно на следующий день.



About the author

Я опытный инженер-программист с более чем 10-летним опытом разработки и поддержки приложений Microsoft Office. У меня есть сильное желание помогать другим достигать их целей, как благодаря моей работе в качестве инженера-программиста, так и благодаря моим навыкам публичных выступлений и налаживанию связей. Я также очень хорошо разбираюсь в аппаратных средствах и драйверах клавиатуры, многие из них я разработал и протестировал сам.



Related posts