- - Ako získať históriu príkazov PowerShell v systéme Windows 10

Ako získať históriu príkazov PowerShell v systéme Windows 10

PowerShell na Windows 10 vám môže dať históriukaždého príkazu, ktorý ste vykonali v aktuálnej relácii, to však pre mnohých používateľov nestačí. Potrebujú históriu príkazov vykonaných počas relácií. Ak potrebujete získať históriu príkazov PowerShell a história samotnej aktuálnej relácie nerobí problém, existuje skript a súbor denníka, ktorý vám môže pomôcť.

História príkazov Aktuálna relácia

Ak máte spustený PowerShell 5, môžete získať históriu príkazov pre aktuálnu reláciu spustením nasledujúceho príkazu;

Get-History

V predvolenom nastavení môže PowerShell uložiť až 50 príkazovale môžete ho zmeniť a uložiť viac. Otvorte PowerShell a kliknite pravým tlačidlom myši na záhlavie. Z kontextovej ponuky prejdite na položku Vlastnosti. V okne Vlastnosti prejdite na kartu Možnosti. Zobrazí sa sekcia História príkazov, v ktorej je predvolená hodnota 50. Zmeňte ju na vyššiu hodnotu.

Protokol histórie PowerShell

Ak chcete zobraziť protokol histórie, musíte najprv nainštalovať modul PSReadLine pomocou nasledujúceho príkazu;

Install-Module PSReadLine

Potom spustite nasledujúci príkaz a vráti umiestnenie súboru. Súbor v tomto umiestnení vám poskytne úplnú históriu každého príkazu, ktorý ste spustili v PowerShell.

(Get-PSReadlineOption).HistorySavePath

História príkazov PowerShell naprieč reláciami

Je to trochu zdĺhavý proces, ale oplatí sa to. Toto riešenie pochádza od spoločnosti Intel. Najprv otvorte nasledujúce umiestnenie a skontrolujte, či sa v tomto umiestnení nenachádza súbor s názvom Microsoft.PowerShell_profile.ps1.

C:Users<username>DocumentsWindowsPowerShell

Ak tam nie je žiadny súbor, otvorte PowerShell a spustite honasledujúci príkaz. Otvorí váš súbor profilu v programe Poznámkový blok, ale tento súbor neexistuje a PowerShell vám to povie toľko a požiada vás, či ho chcete vytvoriť. Umožnite mu vytvoriť súbor.

notepad $Profile

Zatvorte otvorený súbor poznámkového bloku. V PowerShell spustite tento príkaz, aby ste sa uistili, že používate PowerShell 5.

$PSVersionTable.PSVersion

Potom pomocou nasledujúceho príkazu nastavte svoju politiku vykonávania na RemoteSigned.

set-executionpolicy remotesigned

Ďalej je potrebné nainštalovať PsUrl aModuly PSReadline. Môžete ich však nainštalovať pomocou nasledujúceho príkazu, ak sa však vyskytne chyba, jednoducho ich nainštalujte podľa postupu uvedeného na prepojených stránkach alebo skúste pridať úložisko ako dôveryhodné úložisko a potom príkaz znova spustiť.

install-module PsUrl
install-module PSReadline

Po nainštalovaní týchto modulov otvorte tento súbor;

C:Users<username>DocumentsWindowsPowerShellMicrosoft.PowerShell_profile.ps1

Vložte tento súbor do tohto súboru a uložte ho.

$HistoryFilePath = Join-Path ([Environment]::GetFolderPath("UserProfile")) .ps_history
Register-EngineEvent PowerShell.Exiting -Action { Get-History | Export-Clixml $HistoryFilePath } | out-null
if (Test-path $HistoryFilePath) { Import-Clixml $HistoryFilePath | Add-History }
# if you don"t already have this configured...
Set-PSReadlineKeyHandler -Key UpArrow -Function HistorySearchBackward
Set-PSReadlineKeyHandler -Key DownArrow -Function HistorySearchForward

Ak chcete zobraziť históriu príkazov v prostredí PowerShell,musíte spustiť príkaz Get-History, existuje však jeden veľmi dôležitý krok na zabezpečenie uloženia vašej histórie. NEMÔŽETE zatvoriť PowerShell kliknutím na tlačidlo Zavrieť. Namiesto toho ju musíte vždy zavrieť príkazom exit.

Pomocou klávesov so šípkou nahor a nadol môžete prechádzať cez predchádzajúce príkazy.

Komentáre