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