about_History

Kort beskrivning

Beskriver hur du hämtar och kör kommandon i kommandohistoriken.

Lång beskrivning

När du anger ett kommando i kommandotolken sparar PowerShell kommandot i kommandohistoriken. Du kan använda kommandona i historiken som en post för ditt arbete. Och du kan återkalla och köra kommandona från kommandohistoriken.

PowerShell har två olika historikproviders: den inbyggda historiken och historiken som hanteras av PSReadLine-modulen. Historiken hanteras separat, men båda historikerna är tillgängliga i sessioner där PSReadLine läses in.

Använda PSReadLine-historiken

PSReadLine-historiken spårar de kommandon som används i alla PowerShell-sessioner. Historiken skrivs till en central fil per värd. Historikfilen är tillgänglig för alla sessioner och innehåller all tidigare historik. Historiken tas inte bort när sessionen avslutas. Den historiken kan inte heller hanteras av *-History cmdletarna. Mer information finns i about_PSReadLine.

Använda den inbyggda sessionshistoriken

Den inbyggda historiken spårar bara de kommandon som används i den aktuella sessionen. Historiken är inte tillgänglig för andra sessioner och tas bort när sessionen avslutas.

Cmdlets för historik

PowerShell har en uppsättning cmdlets som hanterar kommandohistoriken.

Cmdlet Alias Description
Get-History h Hämtar kommandohistoriken.
Invoke-History r Kör ett kommando i kommandohistoriken.
Add-History Lägger till ett kommando i kommandohistoriken.
Clear-History clhy Tar bort kommandon från kommandohistoriken.

Kortkommandon för att hantera historik

I PowerShell-konsolen kan du använda följande genvägar för att hantera kommandohistoriken.

  • UpArrow – Visar föregående kommando.
  • DownArrow – Visar nästa kommando.
  • F7 – Visar kommandohistoriken.
  • ESC – Om du vill dölja historiken.
  • F8 – Söker efter ett kommando. Skriv ett eller flera tecken och tryck sedan på F8. Tryck på F8 igen nästa instans.
  • F9 – Hitta ett kommando efter historik-ID. Skriv historik-ID:t och tryck sedan på F9. Tryck på F7 för att hitta ID:t.
  • #<string>Flik – Sök i *<string>* historiken efter och returnera den senaste matchningen. Om du trycker på Tabb upprepade gånger växlar den genom matchande objekt i historiken.

Anteckning

Dessa nyckelbindningar implementeras av konsolvärdprogrammet. Andra program, till exempel Visual Studio Code eller Windows-terminal, kan ha olika nyckelbindningar. Bindningarna kan åsidosättas av PSReadLine-modulen. PSReadLine läses in automatiskt när du startar en PowerShell-session. När PSReadLine har lästs in är F7 och F9 inte bundna till någon funktion. PSReadLine tillhandahåller inte motsvarande funktioner. Mer information finns i about_PSReadLine.

MaximumHistoryCount

$MaximumHistoryCountInställningsvariabeln avgör det maximala antalet kommandon som PowerShell sparar i kommandohistoriken. Standardvärdet är 4096.

Följande kommando sänker till exempel till $MaximumHistoryCount 100 kommandon:

$MaximumHistoryCount = 100

Starta om PowerShell för att tillämpa inställningen.

Om du vill spara det nya variabelvärdet för alla dina PowerShell-sessioner lägger du till tilldelningssatsen i en PowerShell-profil. Mer information om profiler finns i about_Profiles.

Mer information om $MaximumHistoryCount inställningsvariabeln finns i about_Preference_Variables.

Ordningen på kommandon i historiken

Kommandon läggs till i historiken när kommandot har avslutat körningen, inte när kommandot har angetts. Om det tar lite tid att utföra kommandona, eller om kommandona körs i en kapslad kommandotolk, kan det verka som att kommandona är i fel ordning i historiken. Kommandon som körs i en kapslad kommandotolk slutförs bara när du avslutar promptnivån.

Se även