16 essentiële PowerShell-opdrachten om te weten
Windows PowerShell is een krachtige app gebaseerd op de. NET-framework. Het is afhankelijk van PowerShell-opdrachten die cmdlets worden genoemd. Door ze in een bepaalde volgorde te combineren, kunt u bijna elke bewerking uitvoeren vanuit het PowerShell-venster. Om uit te leggen hoe het werkt, hebben we de meest essentiële PowerShell-opdrachten op de shortlist gezet.
Hoe PowerShell-opdrachten te gebruiken
Om cmdlets te gaan gebruiken, moet u PowerShell starten in de beheerdersmodus vanuit het zoekmenu.
Essentiële PowerShell-opdrachten
PowerShell in Windows is niet alleen een actieve opdrachtregelinterface, maar ook een script- en programmeervenster dat elke gewenste toepassing of proces kan uitvoeren. Hoewel er enkele honderden cmdlets zijn, hoeft u alleen de meest essentiële te leren om aan de slag te gaan.
1. Clear-Host of Cls
Heb je een blunder begaan tijdens het typen, of gaat er iets niet zoals gepland? Gelukkig zijn er do-overs in PowerShell. De handige clear-host
opdracht kan de volledige tekst van het display wissen. Typ gewoon de opdracht op een willekeurige regel op uw scherm en alles zal onmiddellijk verdwijnen.
U kunt ook de eenvoudigere cls
opdracht gebruiken, die vaak wordt gebruikt in de opdrachtprompt, met PowerShell. Deze twee duidelijke tekstopdrachten zijn handig wanneer u een foutmelding tegenkomt.
Om typefouten in de opdrachtprompt of het PowerShell-venster te voorkomen, kopieert en plakt u de opdrachten voor een betere efficiëntie.
2. Converteren naar HTML
Het hebben van een grote reeks HTML is esthetischer dan een blik werpen op de rommelige PowerShell-screenshots. Het is ook handig wanneer u scriptfouten en andere PowerShell-gebeurtenissen moet delen met niet-technische teamleden.
Alle PowerShell-componenten gebruiken. NET-objecten die we kunnen bekijken op het PowerShell-scherm. Gebruik de cmdlet om ze in een volledig browservenster weer te geven Convert-to-HTML
. Hieronder ziet u een voorbeeld voor het bekijken van alle PowerShell-aliassen op internet. Vergeet niet om een aparte regel te gebruiken vóór “Invoke-Item”.
Get-Alias | ConvertTo-Html | Out-File aliases.htm
Invoke-Item aliases.htm
Zodra u de HTML-conversieopdracht uitvoert, vraagt PowerShell u om het uitvoerbestand te openen met een andere toepassing. Het gebruik van een browser levert een lijst met objecten op, zoals aliassen.
3. Get-opdracht
Er zijn voornamelijk twee soorten opdrachten: aliassen en functies. PowerShell-aliassen dienen als bijnaam voor een functie of cmdlet. Windows heeft standaard enkele aliassen opgeslagen, die u kunt ophalen met Get-Command
. U kunt ook uw eigen aliassen maken.
Het andere opdrachttype in PowerShell is functies. Deze gebruiken een goedgekeurd werkwoord (zoals “get”) en een eenvoudig zelfstandig naamwoord (zoals “StorageNode”).
We gebruiken een functie “Selecteer-object” (let op de combinatie van werkwoord en zelfstandig naamwoord) met een zogenaamde omgevingsvariabele voor computernaam om de naam van de lokale computer weer te geven.
$env:computername | Select-Object
Functies vormen het startpunt van geavanceerde PowerShell-codering. U kunt functies, zoals Start-process
, met parameters en variabelen gebruiken om uw eigen batchscripts te maken en een reeks taken uit te voeren.
4. Get-Help
PowerShell heeft zijn eigen zelflerende cmdlet voor het oplossen van problemen, Get-Help
die alle snelle oplossingen en Help-artikelen in één venster weergeeft. Voer de opdracht in aan het einde van elke uitvoer voor hulp bij verschillende modules. Mogelijk moet u op drukken Yom bijgewerkte versies van de Help-inhoud toe te staan.
Er zijn verschillende hulpmogelijkheden via Get-help
. Als u bijvoorbeeld wilt weten wat Get-process
doet en wat de exacte syntaxis is, voert u het volgende in:
Get-Help Get-Process
5. Get-proces
Get-Process
is een essentiële PowerShell-opdracht die de volledige lijst met processen op uw lokale apparaat of een externe computer in tabelvorm weergeeft.
Voor meer gedetailleerde procesinformatie moet u andere parameters opgeven, zoals Proces-ID (PID) of de naam van het proces.
Er zijn veel specifieke parameters die u kunt opnemen bij het definiëren van het te vinden proces:
- Maak een lijst van processen door de bestandsgrootte in MB op te geven
- Maak een lijst van processen op basis van prioriteit
- Zoek de eigenaar van een proces
6. Get-Service
Uw Windows-computer heeft veel actieve programma’s en processen. Hoewel u ze rechtstreeks in Taakbeheer kunt bekijken, is het gemakkelijker om een volledige lijst te bekijken met Get-service
, die u later naar HTML kunt converteren.
Weet je de exacte naam van de dienst die je nodig hebt niet meer? U kunt een jokerteken (*) gebruiken samen met de paar letters die u kunt onthouden.
Get-service "xyz*"
Enkele veelvoorkomende vlaggen die werken in combinatie met Get-Service
zijn -DisplayName
, -DependentServices
, -InputObject
, en -RequiredServices
.
7. Installatiemodule of installatiescript
PowerShell is een van de veiligste opties om softwarepakketten voor Windows-software te installeren, zoals Microsoft Teams, McAfee Security, Bing Translator, de nieuwste Xbox-games, enz. Voor een volledige lijst met software die door PowerShell wordt ondersteund voor alle gebruikers, voert u het volgende in:
Get-AppxPackage -AllUsers
Een betere manier is om naar het gewenste pakket te zoeken in PowerShell Gallery , een allesomvattende bron voor de nieuwste softwarepakketten. Zodra je het hebt gevonden, voer je een opdracht in, zoals Install-module
, Install-Script
, of Install-Package
. Het volgende toont de installatie van het spel Mijnenveger.
Install-Script -Name Minesweeper
Wacht een paar seconden of minuten totdat het pakket via uw PowerShell is geïnstalleerd. Het zal later beschikbaar zijn in Windows.
Een andere handige opdracht is Find-package
, die zoekt naar een softwarepakket op uw computer of op het web.
8. mkdir, md, rmdir
mkdir
is geen native PowerShell-opdracht. Het is echter een veelgebruikte alias om new-item
mappen aan te maken, omdat deze syntaxis erg populair is in DOS en Linux. mkdir
Wanneer u een naam naar keuze gebruikt , wordt er een lege map gemaakt.
mkdir "name of your empty folder."
Laat PowerShell naar uw nieuw gemaakte map verwijzen met een eenvoudige cd
opdracht.
cd "name of the newly created folder."
De nieuw gemaakte map bevindt zich altijd langs het pad C:\Windows\System32
, maar u kunt gebruiken cd
om naar een andere map te verwijzen.
U kunt vervangen mkdir
door md
voor hetzelfde doel als hierboven. rmdir
Gebruik de opdracht (directory verwijderen) om directory-inhoud te verwijderen :
rmdir "name of the folder with empty content."
9. Nieuw item
In tegenstelling tot aliassen zoals mkdir
en md
, New-item
wordt de officiële cmdlet in PowerShell gebruikt om nieuwe items te maken en hun waarden in te stellen. Naast het maken van bestanden en mappen, kunt u het gebruiken om registersleutels en -vermeldingen te maken.
- Typ het volgende om een nieuwe map te maken met de
New-item
opdracht:
New-item -Path "Directory path location\"-Name "Name of your choice"-Item Type "directory"
- Zodra een map is aangemaakt, kunt u nieuwe bestanden
New-item
in die map plaatsen.
New-item -path "Created directory path location\"-Name "File name.txt"-ItemType "file"-Value "insert any text of your choice."
- Het nieuw gemaakte bestand is te vinden in de doelmap.
10. Item verwijderen
Wil je alle bestanden verwijderen met een extensie, zoals. TEKST,. DOC,. Pdf,. WMV, uit een map? Wijs eerst naar het exacte mappad met behulp van cd
en gebruik vervolgens de cmdlet Remove-Item
zoals hieronder weergegeven:
Remove-Item * -Include *(filetype) - Exclude *(any variable or number)"
De bovenstaande methode is erg handig om verborgen of alleen-lezen bestanden te identificeren en te verwijderen, of om bestanden met speciale tekens te verwijderen.
11. Set-uitvoeringsbeleid
Om veiligheidsredenen heeft PowerShell zijn eigen uitvoeringsbeleid dat van invloed is op configuratiebestanden, scripts en andere parameters. Deze veiligheidsfunctie kan worden uitgevoerd met behulp van de Set-executionPolicy
opdracht, samen met een vlag, zoals -force
, die bestaande items overschrijft. Het volgt de onderstaande syntaxis.
Set-ExecutionPolicy<br>[-ExecutionPolicy]<br>[[-Scope] ]<br>[-Force]<br>[-WhatIf]<br>[-Confirm]<br>[]
Het gebruik van de opdracht om Chocolatey-software te installeren, ziet er bijvoorbeeld Set-ExecutionPolicy
uit als de onderstaande code. Eenmaal uitgevoerd, zal het de officiële Chocolatey-software op uw computer downloaden en installeren.
Set-ExecutionPolicy Bypass -Scope Process -Force; [System.Net.ServicePointManager]::SecurityProtocol = [System.Net.ServicePointManager]::SecurityProtocol -bor 3072; iex ((New-Object System.Net.WebClient).DownloadString('https://community.chocolatey.org/install.ps1'))
12. Selecteer-Object en Sorteer-Object
Als uw map of submap veel bestanden en extensies heeft, kunt u deze in oplopende of aflopende volgorde sorteren of selecteren op basis van een vooraf gedefinieerde eigenschap. Dit is waar de cmdlets Sort-Object
en Select-Object
u kunnen helpen om meerdere objecten in één keer te herschikken.
Het sorteren en selecteren kan worden toegepast op alle bestanden in verschillende mappen en op de bestaande processen op uw computer. Hieronder ziet u een voorbeeld van het sorteren en selecteren van de tien belangrijkste processen op basis van de grootte van de werkset (WS) in megabytes.
Get-process | Sort-Object -Property WS | Select-Object - Last "Number of items"
U kunt sorteren en selecteren gebruiken voor verschillende andere parameters, zoals historische informatie van verschillende bestanden, het sorteren van alle lijstitems in een Kladblok-bestand en het sorteren van verschillende gebeurtenissen op uw computer.
13. Start- en stopproces
Of u nu een nieuw proces in Windows wilt starten of een bestaand proces wilt stoppen, u kunt PowerShell-cmdlets snel gebruiken om dat doel te bereiken.
Gebruik de cmdlet om een proces snel te beëindigen Stop-Process
. Het volgende voorbeeld laat zien hoe u een proces voor WordPad sluit.
Stop-process -Name "Process or Application name"
Evenzo, om een nieuwe toepassing rechtstreeks vanuit het PowerShell-venster te starten, voert u de Start-process
cmdlet en -FilePath
vlag in.
Start-Process -FilePath "Application name"
14. Opschorten en hervatten-Service
In plaats van een lopende service te starten of te stoppen, kunt u deze direct onderbreken. De Suspend-service
cmdlet is eenvoudig te gebruiken en helpt u het RAM- en CPU-gebruik te verminderen van services die u momenteel niet gebruikt.
Suspend-service -DisplayName "Service full name"
Elke beëindigde service kan later worden hervat met een eenvoudig Resume-service
commando. Als u niet zeker weet welke services u kunt onderbreken zonder uw systeem negatief te beïnvloeden, gebruikt u de volgende opdracht:
Get-Service | Where-Object {$_.CanPauseAndContinue -eq "True"} | Suspend-Service -Confirm
15. Testpad
Als u fouten in het bestandspad in uw programmering wilt voorkomen, moet u er zeker van zijn dat het bestandspad in syntaxis correct is. Hoewel u dit altijd kunt verifiëren met Verkenner, is een nauwkeurigere manier om dit te bevestigen door de Test-path
cmdlet te gebruiken, die eenvoudig “True” of “False” antwoordt of een bepaald pad bestaat.
Test-Path -Path "Path name"
U kunt de opdracht wijzigen om de beschikbaarheid van een bepaald bestand te testen, te controleren of het registerpad juist is en te bepalen of er naast een specifiek bestandstype nog andere bestanden op uw computer staan.
16. Wachtproces
Als er meerdere processen achter elkaar worden uitgevoerd, wilt u misschien wachten tot een of meer processen zijn gestopt voordat ze weer kunnen worden gebruikt. De Wait-Process
cmdlet kan enorm helpen. U kunt een time-out opgeven waarvoor PowerShell wacht voordat het proces wordt gestopt.
Wait-Process -Name "Process name, -Timeout (in seconds)
Andere essentiële PowerShell-opdrachten
Afgezien van de hierboven genoemde PowerShell-opdrachten, is het ook handig om de volgende cmdlets en functies te leren:
-
Echo
is een cmdlet die wordt gebruikt om elke waarde op de PowerShell-console af te drukken -
Get-Host
geeft volledige details van het programma dat PowerShell host in Windows -
Test-JSON
is een geavanceerde cmdlet die wordt gebruikt om te testen of een string een geldig JSO-object is -
Trace-command
traceert de volledige uitdrukking of opdracht om de parameters en vlaggen te vinden die deze bevat -
Write-output
, zoals de naam al doet vermoeden, geeft een uitvoer van het laatste commando in het consolevenster.
Veel Gestelde Vragen
Hoe kan ik de fout “PowerShell-script niet herkend als de naam van een cmdlet” oplossen?
Als PowerShell de naam van een cmdlet niet herkent, kan dit komen doordat de Path-variabele niet correct is ingesteld. Herstel elke padvariabelefout door het ongeldige mappad te corrigeren.
Hoe leg ik foutuitvoer vast als een variabele in Powershell?
PowerShell heeft een foutvariabeleparameter, $ErrorVariable
die is ontworpen om alle foutuitvoer vast te leggen wanneer u de verschillende cmdlets invoert. Deze kunnen worden gebruikt voor het oplossen van problemen.
Afbeelding tegoed: DepositPhotos . Alle screenshots door Sayak Boral .
- Tweeten
Geef een reactie