21 June 2022

10 eenvoudige PowerShell-opdrachten die alle Windows-gebruikers moeten kennen

PowerShell geeft u alle controle die u nodig heeft over uw Windows-pc, en het is gemakkelijk te leren. Dus sloot Command Prompt en gebruik Windows PowerShell-opdrachten om die repetitieve administratieve taken te automatiseren. 

Door PowerShell te leren, leer je ook hoe je het meeste kunt omgaan Linux administratieve taken binnen de bash-shell. PowerShell is vergelijkbaar met wat je in de meeste tegenkomt Linux Distro's

Wat is PowerShell?

Windows PowerShell is een opdrachtregelinterface en scripttaal die door Microsoft is ontwikkeld voor systeembeheerders. Maar je hoeft geen beheerder of programmeur te zijn om het te gebruiken, omdat het veel eenvoudiger is dan andere programmeertalen. Het is vergelijkbaar met gewoon Engels en iedereen kan het begrijpen en gebruiken om zijn of haar computer te beheren.

De opdrachten die in Windows PowerShell worden gebruikt, staan ​​bekend als ‘cmdlets’. Hiermee kunt u een specifieke actie of een reeks acties op uw computer activeren. Deze acties kunnen eenvoudig zijn, zoals inloggen op een draadloos netwerk, of complexer, zoals het automatiseren van specifieke repetitieve taken. 

Om PowerShell te openen, drukt u op de Start knop, typ “powershell' in het zoekvak en selecteer Windows PowerShell. U opent de opdrachtregelinterface, waar u klaar bent om opdrachten te typen.

In dit artikel bespreken we tien van de handigste en eenvoudigste PowerShell-opdrachten.

1. Hulp krijgen

De cmdlet Get-Help is een prima startpunt in PowerShell. Het biedt een overzicht van wat u kunt doen en is ook handig als u meer informatie nodig heeft over een bepaalde cmdlet. 

Open eenvoudigweg het PowerShell-venster en typ Krijg hulp. Dit opent een uitgebreid overzicht waarin u leert wat PowerShell is, en u begrijpt de functionaliteit en structuur ervan. U kunt ook rechtstreeks via de interface toegang krijgen tot internet voor meer geavanceerde helpbestanden. U kunt deze bestanden downloaden voor later gebruik. 

Maar dat is niet het einde van het get-help-commando. Type: 

Hulp krijgen * 

PowerShell geeft een overzicht van alle cmdlets die u op dat moment kunt gebruiken. De lijst zal waarschijnlijk enorm zijn en u hoeft niet alle weergegeven cmdlets te leren. Maar lees ze gerust en ontdek alle mogelijkheden die voor u beschikbaar zijn.

Type:

Hulp krijgen

U hebt de haakjes niet nodig, typ eenvoudigweg de naam van de opdracht waarin u geïnteresseerd bent, en deze cmdlet geeft u de basisinformatie erover. Voor een nog gedetailleerdere uitleg van een opdracht typt u:

Hulp krijgen -Vol

Als u een voorbeeld nodig heeft van hoe u een bepaald opdrachttype kunt gebruiken:

Hulp krijgen -Voorbeeld

2.Get-opdracht

Wilt u snel informatie over een specifiek commando of een reeks commando's opvragen? De cmdlet Get-Command doet dat voor u. Er zijn zoveel opties binnen Get-Command, maar jij, als basisgebruiker van PowerShell, hebt de meeste daarvan niet nodig. Hier volgen enkele basis-cmdlets die nuttig kunnen zijn, vooral bij het navigeren door de beschikbare opdrachten.

Als u een lijst met specifieke cmdlets van hetzelfde type wilt:

Get-opdracht -

Deze complexe zin zorgt er bijvoorbeeld voor dat uw computer een lijst weergeeft met alle beschikbare opdrachten van het cmdlet-type en deze sorteert op alfabetische volgorde van het zelfstandig naamwoord in hun naam:

Get-Command-Type Cmdlet | Sorteerobject -Eigenschap zelfstandig naamwoord| Opmaaktabel -GroupBy zelfstandig naamwoord

Dit is een uitstekend voorbeeld van een complexere opdracht waarmee PowerShell een gecompliceerde taak kan uitvoeren. Zodra u de syntaxis begrijpt, zult u zien dat het gebruik van PowerShell vaak de snelste en gemakkelijkste manier is om bepaalde dingen op uw computer gedaan te krijgen.

Als u een specifieke opdracht op naam wilt vinden, typt u eenvoudigweg:

Get-Command-Naam

Als u de exacte naam van de opdracht die u zoekt niet weet, maar u kent wel een deel van de naam, typt u: 

Get-Command-Naam -Gebruik FuzzyMatching

Deze cmdlet geeft uw computer de opdracht om opdrachten te vinden die nauw overeenkomen met wat u in het veld. U kunt deze cmdlet ook gebruiken als u gevoelig bent voor spelfouten en niet de hele tijd de moeite wilt nemen om uzelf te corrigeren.

3. Ontvang inhoud

Als u de inhoud van een bestand wilt zien, gebruikt u de cmdlet Get-Content. U moet de exacte locatie van het genoemde bestand opgeven, zodat uw computer het kan vinden.

In het bovenstaande voorbeeld ziet u de inhoud van een testtekstbestand dat voor dit doel is gemaakt. Dit is een eenvoudig commando, maar als je weet wat het doet, kun je het combineren met andere commando's en echt krachtige taken uitvoeren via Windows PowerShell.

4. Get-proces

De cmdlet Get-Process geeft u informatie over de momenteel actieve processen op uw computer. U kunt het geheugengebruik, CPU-cycli, proces-ID en andere kenmerken zien. 

Als u de naam van het proces aan deze cmdlet toevoegt, kunt u de informatie over een specifiek proces bekijken. Als u bijvoorbeeld informatie wilt over het Discord-aanvraagproces, typt u eenvoudigweg Get-proces onenigheid.

U kunt processen starten of stoppen via PowerShell door eenvoudigweg het voorvoegsel “Get” van de syntaxis te vervangen. Om een ​​proces te starten, typt u:

Start-proces  

Om een ​​proces te stoppen typt u:

Stop-proces

5. Ontvang service

Als systeembeheerder vindt u de Get-Service-cmdlet wellicht erg handig. Deze eenvoudige cmdlet geeft alle services weer die momenteel op uw systeem worden uitgevoerd en stelt u in staat deze te beheren. Dit betekent dat u alle programma's kunt zien die momenteel werken om uw computer te laten werken. 

Nu kunt u de servicenaam gebruiken om deze te beheren. Gebruik commando's zoals Herstart-Service om de bevroren exemplaren los te maken, Stop service om ze volledig te stoppen, en Start dienst om ze opnieuw te starten.

6. Artikel ophalen

Als u een specifiek item nodig heeft, kunt u dit wellicht sneller vinden via PowerShell dan via een zoekbalk die in uw besturingssysteem is geïntegreerd. Het is vooral handig als u de locatie kent van het bestand dat u nodig heeft. Gebruik de opdracht eenvoudig op deze manier:

Artikel C ophalen:

Hiermee krijgt u de lijst met bestanden op de harde schijf "C:". U kunt nog specifieker zijn en zoeken in alle mappen onder het gebruikersprofiel of dieper in de mappen “documenten” of “downloads” gaan. Om dit te doen, typt u:

Get-Tem C:gebruikers *

Als u een onderliggend item uit een container, zoals een systeemmap, wilt ophalen, kunt u de cmdlet gebruiken Get-ChildItem. Met deze opdracht worden alle bestanden en mappen in die container weergegeven. Net als bij de Get-Item-cmdlet moet u het pad van de container opgeven.

Om items te verwijderen, kunt u het achtervoegsel ‘Get’ vervangen door ‘Verwijderen’. Hiermee kunt u alles verwijderen, van bestanden en mappen tot registersleutels en functies. Type Verwijder voorwerp. U kunt deze cmdlet verder uitwerken en alleen verborgen en “alleen-lezen” bestanden verwijderen of items uit specifieke mappen en submappen verwijderen.

7. Converteren naar HTML

Met deze opdracht kunt u een .NET-object converteren naar een HTML-bestand dat in webbrowsers kan worden weergegeven. Dit is een uitvoer-cmdlet, wat betekent dat deze uitstekend werkt met andere cmdlets. Voeg het eenvoudig toe aan het einde van andere cmdlets en voeg een specifiek bestandspad toe. 

Als u bijvoorbeeld een HTML-bestand wilt maken dat de naam, het pad en het bedrijf van alle huidige processen van een lokale computer weergeeft, typt u: 

Get-proces | ConvertTo-Html -Eigenschapsnaam, pad, bedrijf -Titel "Procesinformatie" | Uitbestandsbestandsnaam.htm

Vervang bestandsnaam.htm door elke gewenste bestandsnaam.

Om het gemaakte bestand te openen, gebruikt u de Invoke-Item-cmdlet plus . De inhoud zou er ongeveer zo uit moeten zien als de onderstaande afbeelding.

8. Set-uitvoeringsbeleid

Als u lokale PowerShell-scripts wilt uitvoeren, moet u het uitvoeringsbeleid van de PowerShell zelf wijzigen. Op Windows-computers is het uitvoeringsbeleid altijd beperkt en moet u dit wijzigen in RemoteSigned of Unrestricted. Op niet-Windows-computers, zoals Linux of Mac, is dit doorgaans ingesteld op Onbeperkt en kan dit niet worden gewijzigd. 

Als u meer wilt weten over het PowerShell-uitvoeringsbeleid, typt u eenvoudigweg:

help Set-ExecutionPolicy

De PowerShell geeft de helpbestanden over het uitvoeringsbeleid op uw computer weer of geeft u een melding als er geen zijn. Maar u krijgt er ook een link bij waarmee u het online kunt volgen en lezen.

Om het beleid in te stellen op RemoteSigned typt u eenvoudigweg:

Set-uitvoeringsbeleid RemoteSigned

Om het in te stellen op Onbeperkt type:

Set-uitvoeringsbeleid onbeperkt

Om de huidige instelling voor het uitvoeringsbeleid te controleren, typt u: 

Get-uitvoeringsbeleid

Omdat het uitvoeringsbeleid deel uitmaakt van de beveiligingsstrategieën van PowerShell, wordt u om bevestiging van de wijziging gevraagd. Type Y alleen als u zeker weet dat u verder wilt gaan.

9.Selecteer-Object

Deze opdracht wordt gebruikt om objecten en sets objecten, unieke objecten en objecten op een specifieke positie in een array te selecteren. Er zijn verschillende parameters die u kunt gebruiken om de objecten op te geven die u wilt selecteren. Daartoe behoren eigenschappen, numerieke waarden en specifieke invoerobjecten. 

Als u objecten op eigenschapskenmerk wilt selecteren, moet u de kenmerken opgeven, zoals naam, ID of CPU. U kunt de attributen zelfs groeperen, maar u moet ze scheiden met komma's wanneer u de opdracht typt. Om de Select-Object-cmdlet in actie te zien, typt u:

Get-proces | Select-Object -Eigenschap Procesnaam, ID, CPU

De PowerShell vermeldt alle huidige processen en hun kenmerken, zoals hieronder weergegeven.

U kunt nu de opdracht -EpandProperty gebruiken om gedetailleerde informatie over het specifieke kenmerk te verkrijgen. Als u details wilt over de eigenschap Modules van het type ProcessName-attribuut:

Get-proces Chrome | Select-Object -Eigenschap Procesnaam -ExpandEigenschap Modules | Formaatlijst

De uitvoer “Format-list” van de opdracht is er om de resultaten opgemaakt en leesbaar te maken.

10. Export-CSV

Soms resulteren de PowerShell-opdrachten in lange lijsten, zoals we zagen met de Get-Command-cmdlet. Lange lijsten en veel informatie zijn moeilijk te lezen, en u zult het op een meer georganiseerde manier willen hebben. Exporteer hiervoor alle gegevens naar een CSV-bestand. U kunt dit rechtstreeks in PowerShell doen met behulp van de functie Export-CSV.

We zagen bijvoorbeeld dat de cmdlet Get-Command ons een lange lijst geeft met alle beschikbare cmdlets die we op dat moment in PowerShell kunnen gebruiken. U kunt de Get-Command en Export-CSV combineren om een ​​gedetailleerde lijst te maken met door komma's gescheiden waarden zoals naam, bron en versie die apps zoals Excel kunnen herkennen. 

Om dit te doen typt u de volgende opdracht in de PowerShell-opdrachtprompt, maar houd er rekening mee dat u elk gewenst pad kunt instellen en dat u uw bestand een andere naam kunt geven:

Get-opdracht | Selecteer Naam, Bron, Versie | export-csv D:AllCommands.csv

U kunt de lijst nu in Excel openen en u zou iets moeten zien dat lijkt op de volgende afbeelding.