16Aug

Sådan bruges din kommandog History i Windows PowerShell

click fraud protection

Windows PowerShell har en indbygget kommandobeskedsfunktion, som indeholder detaljerede oplysninger om de kommandoer, du har kørt. Ligesom kommandoprompt husker PowerShell kun din kommandop History for den aktuelle session.

Sådan bruges kommandolinjebufferen

PowerShell har teknisk to typer kommandobeskrivelse. For det første er der kommandolinjebufferen, som faktisk er en del af den grafiske PowerShell-terminalapplikation og ikke en del af den underliggende Windows PowerShell-applikation. Det giver nogle grundlæggende funktioner:

  • Pil UP : Husk den tidligere kommando, du skrev. Tryk gentagne gange på tasten for at gå igennem din kommandobeskrivelse.
  • Pil ned : Husk den næste kommando, du har indtastet. Tryk gentagne gange på tasten for at gå igennem din kommandobeskrivelse.
  • F8 : Søg i din kommandohistorik for en kommando, der matcher teksten på den nuværende kommandolinje. Så hvis du ønskede at søge efter en kommando, der begyndte med "p", skulle du skrive "p" på kommandolinjen og derefter gentagne gange trykke på F8 for at gennemgå kommandoer i din historie, der begynder med "a".
    instagram viewer

Som standard husker bufferen de sidste 50 kommandoer, du har indtastet. For at ændre dette skal du højreklikke på titellinjen i PowerShell-promptvinduet, vælge "Egenskaber" og ændre værdien af ​​"Bufferstørrelse" under Command History.

Sådan får du vist PowerShell History

Windows PowerShell selv holder en historie over de kommandoer, du har skrevet i den aktuelle PowerShell-session. Du kan bruge flere medfølgende cmdlets til at se og arbejde med din historie.

Hvis du vil se historikken over de kommandoer, du har skrevet, skal du køre følgende cmdlet:

Get-History

Du kan søge i din historie ved at lede den resulterende udgang til cmdlet Select-String og angive den tekst, du vil søge efter. Udskift "Eksempel" i cmdlet nedenfor med teksten du vil søge efter:

Get-History |Vælg-String -Pattern "Eksempel"

For at få vist en mere detaljeret kommandobeskrivelse, der viser udførelsesstatus for hver kommando sammen med start- og sluttiderne, skal du køre følgende kommando:

Get-History |Format-List -Property *

Som standard viser cmdlet Get-History kun de 32 seneste historikposter. Hvis du vil se eller søge et større antal historikposter, skal du bruge funktionen -Count til at angive, hvor mange historikposter PowerShell skal vise, som sådan:

Get-History -Count 1000 Get-History -Count 1000 |Select-String -Pattern "Eksempel" Get-History -Count 1000 |Format-List -Property *

Sådan køres kommandoer fra din historie

Hvis du vil køre en kommando fra din historie, skal du bruge følgende cmdlet og specificere id-nummeret på historikelementet som vist i cmdlet Get-History:

Invoke-History #

Hvis du vil køre to kommandoer fra din historie tilbage til tilbage, skal du bruge Invoke-History to gange på samme linje, adskilt af et semikolon. Hvis du f.eks. Vil køre den første kommando i din historie og derefter den anden, skal du køre:

Invoke-History 1; Invoke-History 2

Sådan slettes din PowerShell History

For at rydde historikken over de kommandoer, du har skrevet, kør følgende cmdlet:

Clear-History

Bemærk, at kommandolinjebufferen er adskilt fra PowerShell-historien. Så selvom du har kørt Rydhistorik, kan du fortsætte med at trykke på pil op og ned for at rulle gennem kommandoer, du har skrevet. Men hvis du kører Get-History, kan du se, at din PowerShell-historie rent faktisk er tom.

PowerShell kan ikke huske din historie mellem sessioner. For at slette begge kommandohistorier for den aktuelle session er alt, hvad du skal gøre, at lukke PowerShell-vinduet.

Hvis du vil rydde PowerShell-vinduet efter at have ryddet historikken, kan du gøre det ved at køre kommandoen Slet:

Ryd

Sådan gemmes og importeres PowerShell History

Hvis du vil gemme PowerShell-kommandologgen for den aktuellesession, så du kan henvise til det senere, det kan du gøre.

Get-History |Eksport-Clixml -Path c: \ users \ name \ desktop \ commands.xml

Dette eksporterer din kommandobeskrivelse som en detaljeret XML-fil komplet med "StartExecutionTime" og "EndExecutionTime" værdier for hver kommando, der fortæller dig, hvornår kommandoen blev kørt oghvor lang tid det tog at fuldføre.

Når du har eksporteret din PowerShell-historie til en sådan XML-fil, kan du( eller alle andre du sender XML-filen til) importere den til en anden PowerShell-session med CMDlet-siden:

Add-History -InputObject( Import-Clixml -Path C: \ users \ name \ desktop \ commands.xml)

Hvis du kører cmdlet Get-History efter at have importeret en sådan XML-fil, vil du se, at kommandoer fra XMLfilen blev importeret til din nuværende PowerShell-session.