Як використовувати історію команд у Windows PowerShell

Windows PowerShell має вбудовану функцію історії команд, яка надає детальну інформацію про команди, які ви виконували. Як і командний рядок, PowerShell запам'ятовує лише історію команд для поточного сеансу.

Як використовувати буфер командного рядка

Технічно PowerShell має два типи історії команд. По-перше, це буфер командного рядка, який фактично є частиною графічної термінальної програми PowerShell, а не частиною базової програми Windows PowerShell. Він надає кілька основних функцій:

  • Стрілка вгору: нагадує попередню команду, яку ви набрали. Натисніть декілька разів, щоб переглянути історію команд.
  • Стрілка вниз: згадайте наступну команду, яку ви набрали. Натисніть декілька разів, щоб переглянути історію команд.
  • F8: пошук у історії команд команди, що відповідає тексту у поточному командному рядку. Отже, якщо ви хочете знайти команду, яка починається з «p», ви повинні ввести «p» в командному рядку, а потім кілька разів натиснути F8, щоб переглянути команди у вашій історії, які починаються з «a».

Типово, буфер запам'ятовує останні 50 команд. Щоб змінити це, клацніть правою кнопкою миші на рядку заголовка вікна запрошення PowerShell, виберіть «Властивості» та змініть розмір буфера у розділі «Історія команд».

Як переглянути історію PowerShell

Windows PowerShell сама зберігає історію команд, набраних вами в поточному сеансі PowerShell. Ви можете використовувати декілька командлетів для перегляду і роботи з вашою історією.

Щоб переглянути історію команд, виконайте наступний командлет:

Get-History

Ви можете виконати пошук у своїй історії, відправивши отриманий результат в командлет Select-String і вказавши текст, який ви хочете знайти. Замініть «Приклад» у командлеті нижче текстом, який ви хочете знайти:

Get-Історія | Select-String -Pattern "" Приклад "

Щоб переглянути більш детальну історію команд, в якій відображається стан виконання кожної команди, а також час її початку та закінчення, виконайте наступну команду:

Get-Історія | Формат-Список - Звійства *

За замовчуванням командлет Get-History показує лише 32 останні записи історії. Якщо ви хочете переглянути або знайти більшу кількість записів історії, скористайтеся параметром -Count, щоб вказати, скільки записів історії PowerShell повинен відображати, наприклад:

Get-History -Count 1000
Get-History -Count 1000 | Select-String -Pattern "" Приклад "
Get-History -Count 1000 | Формат-Список -Свойства *

Як запускати команди з вашої історії

Щоб запустити команду зі своєї історії, використовуйте наступний командлет, вказавши номер Id елемента історії, як показано в командлеті Get-History:

Invoke-History #

Щоб запустити дві команди з історії впритул, двічі використовуйте Invoke-History в одному рядку, розділених крапкою з комою. Наприклад, щоб швидко запустити першу команду в своїй історії, а потім другу, ви повинні виконати:

Invoke-History 1; Invoke-History 2

Як очистити історію PowerShell

Щоб очистити історію команд, виконайте наступний командлет:

Чиста історія

Зауважте, що буфер командного рядка відокремлено від історії PowerShell. Таким чином, навіть після запуску Clear-History ви можете продовжувати натискати клавіші зі стрілками вгору і вниз для прокрутки введених вами команд. Однак якщо ви запустите Get-History, ви побачите, що ваша історія PowerShell фактично порожня.

PowerShell не запам'ятовує вашу історію між сесіями. Щоб стерти обидві історії команд для поточного сеансу, все, що вам потрібно зробити, це закрити вікно PowerShell.

Якщо ви хочете очистити вікно PowerShell після очищення історії, ви можете зробити це, виконавши команду Clear:

ясно

Як зберегти та імпортувати історію PowerShell

Якщо ви хочете зберегти історію команд PowerShell для поточного сеансу, щоб ви могли звернутися до неї пізніше, ви можете зробити це.

Get-Історія | Export-Clixml -Path c: \ users \ name \ desktop \ commands.xml

Це експортує вашу історію команд у вигляді докладного XML-файлу зі значеннями «StartExecutionTime» і «EndExecutionTime» для кожної команди, які повідомляють вам, коли команда була виконана і скільки часу знадобилося для її завершення.

Після того як ви експортували історію PowerShell у файл XML, ви (або хтось інший, кому ви надсилаєте файл XML) можете імпортувати її в інший сеанс PowerShell за допомогою командлета Add-History:

Історія додавання -InputObject (Import-Clixml -Path C: \ users \ name \ desktop \ commands.xml)

Якщо ви виконаєте командлет Get-History після імпорту такого файлу XML, ви побачите, що команди з файлу XML були імпортовані в історію поточного сеансу PowerShell.

COM_SPPAGEBUILDER_NO_ITEMS_FOUND