Windows PowerShell heeft een ingebouwde Geschiedenis functie die alle opdrachten onthoudt die u hebt uitgevoerd tijdens het gebruik ervan. Hoewel het de geschiedenis van de actieve sessie zou moeten onthouden, zie ik dat het meer bevat dan dat. In dit bericht zal ik laten zien hoe je PowerShell-opdrachtgeschiedenis kunt zien en slim kunt gebruiken.
PowerShell-opdrachtgeschiedenis bekijken
Het belangrijkste voordeel van het hebben van een geschiedenisfunctie is dat je niet opnieuw hoeft te typen om een bepaald commando uit te voeren dat je al een keer hebt uitgevoerd. Het herhalen van honderden commando's helpt echter niet veel. Hoe zit het met het doorzoeken ervan of het uitvoeren van een specifieke opdracht die u zich slechts gedeeltelijk herinnert?? Volg deze methoden.
- Toetsenbordmethode
- Vooruit of achteruit zoeken in PowerShell-geschiedenis
- Bekijk de hele geschiedenis van deze sessie
- Een bepaalde opdracht aanroepen vanuit de PowerShell-opdracht Geschiedenis
- Zoeken in de geschiedenis
Uiteindelijk hebben we ook uitgelegd hoe u de geschiedenis van de PowerShell-opdracht kunt wissen, exporteren en importeren. Erg handig als je vaak dezelfde commando's moet uitvoeren.
1] Toetsenbordmethode
Ik weet zeker dat je de opdrachtprompt één keer hebt gebruikt als je Windows al een tijdje hebt gebruikt. Als u de pijltjestoetsen omhoog en omlaag gebruikt, kunt u heen en weer gaan met de uitgevoerde opdrachten. Hetzelfde geldt ook voor PowerShell. Maar hier is de twist. Als u een opdracht gedeeltelijk onthoudt, kunt u als volgt zoeken:.
- Typ een deel van de opdracht die u zich herinnert
- Druk op F8 en blijf erop drukken totdat je vindt.
- De zoekterm wordt gemarkeerd met fluorescerend groen, gevolgd door de rest van de opdracht.
Het enige nadeel is dat de zoekterm het begin van de opdracht moet zijn.
2] Vooruit of achteruit zoeken in de geschiedenis
Als u vooruit of achteruit wilt zoeken in Geschiedenis, dan kunt u Ctrl + R en Ctrl + S . gebruiken. Met de eerste kun je terug in de geschiedenis zoeken, terwijl je met de latere vooruit. Zodra u de sneltoets gebruikt, ziet u onderaan een fragment (bck-i-search of fwd-i-search). Typ wat u wilt zoeken, en zelfs als de tekst ergens in het midden van de opdracht hoort, zal hij ernaar zoeken. Het is veel beter in vergelijking met de F8-methode die we hierboven hebben gebruikt.
3] Bekijk de volledige PowerShell-opdracht Geschiedenis van deze sessie
Typ Geschiedenis en druk op de Enter-toets. Je zou alle commando's moeten kunnen zien die je in de huidige sessie hebt uitgevoerd. Hoewel u de opdrachten die in de eerdere sessie zijn uitgevoerd kunt bekijken met behulp van de pijltoetsen, heeft de geschiedenis dit niet. Als u op de drukt toets "H" en druk op enter, het zal de geschiedenis van commando's onthullen. Beschouw het als een snelkoppeling naar de opdracht Geschiedenis.
4] Roep een bepaald commando op uit de geschiedenis
Als je het opmerkt, heeft de afbeelding hierboven een ID naast elke opdracht. Als u een specifiek commando uit de lijst wilt uitvoeren, moet u gebruiken Invoke-geschiedenis.
- Noteer de ID van de opdracht die u wilt uitvoeren
- Type Invoke-geschiedenis
. Vervangenmet het exacte nummer - Druk op de Enter-toets en het zal die opdracht vanuit Geschiedenis uitvoeren.
5] Zoeken in de geschiedenis
De gemakkelijkste manier om in de geschiedenis van opdrachten te zoeken, is door de Select-String-methode te gebruiken op Geschiedenis-uitvoer.
- Typ het volgende en vervang Get door de term die u wilt zoeken
- Get-geschiedenis | Select-String -Patroon "Get".”
- Het zal alle commando's onthullen die overeenkomen met de zoekopdrachten.
Aangezien u de id meekrijgt, kunt u de opdracht Invoke History gebruiken om deze onmiddellijk uit te voeren.
PowerShell-geschiedenis wissen, exporteren en importeren
Om alle opdrachten uit de geschiedenis te verwijderen, hoeft u alleen maar de opdracht uit te voeren "Geschiedenis wissen.Houd er rekening mee dat zelfs nadat u dit hebt gedaan, u nog steeds toegang hebt tot de opdracht met de pijltoetsen omhoog en omlaag.
Naar exporteer alle commando's, je kunt de gebruiken Export-Clixml of Export-CSV formaat. Hier is de voorbeeldopdracht:
Get-geschiedenis | Export-Clixml -Pad\PSGeschiedeniscommando's.xml Get-geschiedenis | Export-Csv -Pad \PSGeschiedeniscommando's.csv
Naar importeer deze commando's terug naar een andere of nieuwe sessie, gebruik de volgende opdracht:.
Add-History -InputObject (Import-Clixml -Pad\PSGeschiedeniscommando's.xml) Add-History -InputObject (Import-Csv -Pad \PSGeschiedeniscommando's.csv)
U kunt dit CSV- of XML-bestand op elk moment openen om de PowerShell-opdrachtgeschiedenis direct te zien. Dit vat vrijwel alles samen rond PowerShell Command History, en hoe je ze kunt hergebruiken met behulp van cumbers of door ze te doorzoeken of de volgende dag terug te importeren.