PowerShell på Windows 10 kan gi deg en historiefor hver kommando du har utført i den aktuelle økten, er dette imidlertid ikke nok for mange brukere. De trenger en historie med kommandoer utført på tvers av økter. Hvis du trenger å få PowerShell-kommandohistorikken, og historikken for den gjeldende økten alene ikke gjør susen, er det et skript og en loggfil som kan hjelpe deg.
Kommandohistorie Nåværende sesjon
Hvis du kjører PowerShell 5, kan du få kommandologgen for den gjeldende økten ved å kjøre følgende kommando;
Get-History
Som standard kan PowerShell lagre opptil 50 kommandoermen du kan endre det for å spare mer. Åpne PowerShell og høyreklikk tittellinjen. Gå til hurtigmenyen, gå til Egenskaper. Gå til Egenskaper-vinduet, gå til Alternativer-fanen. Du vil se en Kommandohistorikk-seksjon der standardinnstillingen er satt til 50. Endre den til en høyere verdi.
![](/images/windows/how-to-get-the-powershell-command-history-on-windows-10.jpg)
PowerShell-logg
For å se historikkloggen, må du først installere PSReadLine-modulen med følgende kommando;
Install-Module PSReadLine
Kjør deretter følgende kommando, og den vil returnere en filplassering. Filen på dette stedet vil gi deg en fullstendig historie over alle kommandoer du har kjørt i PowerShell.
(Get-PSReadlineOption).HistorySavePath
![](/images/windows/how-to-get-the-powershell-command-history-on-windows-10_2.jpg)
CrossShession PowerShell-kommandohistorie
Dette er litt av en lang prosess, men det er verdt det. Denne løsningen kommer fra Intel. Åpne først følgende sted og sjekk om det er en fil som heter Microsoft.PowerShell_profile.ps1 på dette stedet.
C:Users<username>DocumentsWindowsPowerShell
Hvis det ikke er noen fil der, åpner du PowerShell og kjørerfølgende kommando. Den vil åpne profilfilen din i Notisblokk, men den filen eksisterer ikke, og PowerShell vil fortelle deg like mye, og spørre om du vil opprette den. La den lage filen.
notepad $Profile
Lukk notisblokkfilen som åpnes. I PowerShell, kjør denne kommandoen for å sikre at du kjører PowerShell 5.
$PSVersionTable.PSVersion
Deretter setter du utføringspolitikken til RemoteSIGN med følgende kommando.
set-executionpolicy remotesigned
Deretter må du installere PsUrl ogPSReadline moduler. Du kan installere dem med følgende kommando, men hvis du får en feil, bare installer dem manuelt ved prosessen som er skissert på de koblede sidene, eller prøv å legge til depotet som et klarert depot og deretter kjøre kommandoen igjen.
install-module PsUrl
install-module PSReadline
Nå som disse modulene er installert, åpner du denne filen;
C:Users<username>DocumentsWindowsPowerShellMicrosoft.PowerShell_profile.ps1
Lim inn følgende i denne filen, og lagre den.
$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
For å se kommandohistorikken i PowerShell,du trenger å kjøre Get-History-kommandoen, men det er et veldig viktig skritt for å sikre at historikken din er lagret. Du KAN IKKE lukke PowerShell ved å klikke på lukk-knappen. I stedet må du alltid lukke den med exit-kommandoen.
![](/images/windows/how-to-get-the-powershell-command-history-on-windows-10_3.jpg)
Du kan bruke piltastene Opp og Ned for å bla gjennom de forrige kommandoene.
kommentarer