Met commando's je Windows-systeem beheren, zo doe je dat

© fatmawati - stock.adobe.com

Met commando's je Windows-systeem beheren, zo doe je dat

Geplaatst: 27 september 2023 - 07:33

Toon van Daele

De naam Windows geeft al aan dat dit besturingssysteem zich graag vanuit grafische vensters laat aansturen. Zo zijn we het inmiddels misschien gewend, maar sommige taken laten zich nog altijd beter of tenminste sneller vanaf de Opdrachtprompt uitvoeren.

Tip 01: Starten

Je kunt op verschillende manieren de Opdrachtprompt starten, ook wel bekend als de command line interface (CLI). Een manier is bijvoorbeeld door Opdrachtprompt of cmd te tikken in het Windows-startmenu. Als de commando’s die je wilt uitvoeren beheerrechten vereisen, dan klik je met de rechtermuisknop op Opdrachtprompt en kies je voor Uitvoeren als administrator. Het Opdrachtprompt-venster zal dan beginnen met de titel Administrator: […].

Een andere manier is door Ctrl+Shift+Esc in te drukken om het Taakbeheer te openen, dan selecteer je Bestand / Nieuwe taak uitvoeren, waarna je cmd tikt en op Enter drukt of op OK klikt. Eventueel kun je nog een vinkje plaatsen bij Deze taak met administratorbevoegdheden uitvoeren voordat je bevestigt met OK.

Als je de Opdrachtprompt direct in een specifieke map wilt openen, bijvoorbeeld om bestandsbewerkingen uit te voeren, navigeer je in Verkenner naar de gewenste map, klik je met de rechtermuisknop op een lege plek in deze map en kies je Openen in Terminal. Helaas gebeurt dit niet als administrator. Als je dit wel wilt, is er een vrij complexe registerbewerking nodig. De stappen hiervoor worden hier beschreven. We hebben deze procedure succesvol getest op Windows 11, maar let op die pagina goed op de tekst in de bijbehorende schermafbeeldingen.

 Met commando's je Windows-systeem beheren, zo doe je dat-65031579

Rechtstreeks in een specifieke map met administratorbevoegdheden.

 Met commando's je Windows-systeem beheren, zo doe je dat-65031587

Links: de oude Conhost, rechts het nieuwe Windows Terminal.

Tip 02: Gebruik

Voordat we een reeks nuttige commando’s bespreken, geven we eerst enkele handige tips om efficiënter te werken op de Opdrachtprompt. Om snel een overzicht van de ingebouwde commando’s te krijgen, volstaat het commando help. Elk commando dien je wel te bevestigen met de Enter-toets. Voor informatie over een specifiek commando volstaat een van deze opdrachten:

help <commando>

Of:

<commando> /?

Bijvoorbeeld:

help doskey

Of:

prompt /?

Het laatste commando vertelt je dat je de prompt kunt aanpassen met tekst en allerlei variabelen, zoals:

prompt Station $N:

Met prompt zonder verdere parameters herstel je de standaardprompt.

Duurt de uitvoer van sommige commando’s te lang dan kun je deze onderbreken met Ctrl+C. Met cls schoon je het Opdrachtprompt-venster in één keer op. Druk (herhaaldelijk) op de Tab-toets om bestands- of mapnamen automatisch te laten verschijnen of op Shift+Tab voor de omgekeerde alfabetische volgorde.

Om snel een eerder uitgevoerd commando te herhalen, druk je op F3 (voor het vorige commando) of op F8 (hiermee navigeer je omgekeerd chronologisch door je commandolijst). Druk je op F7, dan zie je een menu met de commandogeschiedenis en selecteer je met de muis of de pijltoetsen het gewenste commando.

We gaan ervan uit dat je de werking van het commando cd kent. Dit gebruik je om naar een ander pad te navigeren, bijvoorbeeld:

cd\

(rootmap)

cd..

(hogere map)

cd c:\windows

(specifieke map)

Of je kopieert een pad in Verkenner met Ctrl+C naar het klembord en je plakt dit op de Opdrachtprompt met Ctrl+V.

 Met commando's je Windows-systeem beheren, zo doe je dat-65031593

Met F7 blader je door je recente commandogeschiedenis.

Tip 03: Informatie opvragen

Windows heeft diverse commando’s waarmee je allerlei informatie kunt opvragen over gebruikers, netwerkverbindingen, je systeem enzovoort. We bespreken kort enkele handige tools.

Om snel uit te zoeken met welk account iemand is aangemeld en wat de computernaam is, volstaat het commando whoami. Wil je ook weten tot welke groepen de gebruiker hoort, gebruik dan:

whoami /groups

Ben je geïnteresseerd in allerlei informatie over je systeem, voer dan systeminfo uit. Of met onderstaande toevoeging om de gegevens in een tekstbestand te bewaren:

systeminfo >systeeminfo.txt

Je vindt hier onder meer het processortype en systeemmodel, de BIOS-versie, de hoeveelheid fysiek en virtueel geheugen.

Dit commando geeft je informatie over je netwerkadapters, zoals het ip-adres en fysieke MAC-adres, evenals de gateway (wat meestal het ip-adres van je router is):

ipconfig /all

Om een ip-adres van een webserver te achterhalen, gebruik je de opdracht:

nslookup <webadres>

Hiermee krijg je de namen te zien van de draadloze netwerken waarmee je systeem eerder al verbonden was:

netsh wlan show profile

Deze opdracht toont je het netwerkwachtwoord bij Key Content in de rubriek Security Settings (vervang <wifi-netwerknaam> door de echte naam):

netsh wlan show profile <wifi-netwerknaam> key=clear

Werk je met een laptop en zoek je uitgebreide informatie over de batterijstatus, gebruik dan:

powercfg /batteryreport

Je krijgt inzage in dit rapport door op Windows-toets+R in te drukken en de standaardlocatie C:\windows\system32\battery-report.html in te tikken.

 Met commando's je Windows-systeem beheren, zo doe je dat-65031638

Van gebruikers over netwerken tot accu’s: Windows weet het allemaal!

Tip 04: Schijfbeheer

Ben je vooral geïnteresseerd in informatie over de aangesloten stations, dan kun je met fsutil aan de slag. Zo levert deze opdracht een lijst van alle gedetecteerde stations:

fsutil fsinfo drives

Om te weten om welk type het precies gaat, gebruik je (vervang x: door de gewenste stationsletter):

fsutil fsinfo drivetype x:

Mogelijke resultaten zijn Fixed Drive, Removable Drive en Remote/Network Drive.

Dit commando vertelt je hoeveel schijfruimte je nog over hebt:

fsutil volume diskfree x:

Technisch geïnteresseerde gebruikers moeten zeker ook deze opdracht uitproberen en het verschil bekijken tussen een NTFS- en een (ex)FAT-station (zoals bij een usb-stick):

fsutil fsinfo volumeinfo x:

Je merkt dat een NTFS-geformatteerd station veel meer ingebouwde functies ondersteunt, waaronder schijfquota, bestandsencryptie en -compressie.

Met fsutil kun je niet alleen informatie opvragen, maar ook bepaalde functies aanpassen. We nemen de zogeheten TRIM-functie op een ssd-schijf als voorbeeld. Deze zorgt ervoor dat data van verwijderde bestanden op de betreffende ssd-sectoren tijdens onbenutte momenten echt worden gewist, zodat dit niet meer hoeft te gebeuren op het ogenblik dat daar nieuwe bestanden worden bewaard. Deze functie zorgt er dus voor dat gegevens sneller naar de ssd worden geschreven. Hiermee vraag je de actuele TRIM-status op:

fsutil behavior query disabledeletenotify

Verschijnt NTFS DisableDeleteNotify = 0 (Disabled), dan is (enigszins verwarrend) TRIM ingeschakeld. Wil je TRIM alsnog inschakelen als dat niet zo blijkt te zijn (wat we over het algemeen aanraden), voer dan deze opdracht uit:

fsutil behavior set disabledeletenotify 0

Met de parameter 1 schakel je TRIM weer uit.

 Met commando's je Windows-systeem beheren, zo doe je dat-65031650

Met de juiste parameters kom je heel wat (technische) informatie over je schijven te weten.

Tip 05: Back-ups (en meer)

Windows heeft ook diverse interne commando’s waarmee je data kunt kopiëren, zoals copy en xcopy. Nog krachtiger, maar minder bekend, is het commando robocopy, dat je goed kunt inzetten voor diverse kopieer- en back-upoperaties.

Om bijvoorbeeld bestanden uit een map te synchroniseren met een andere map kun je het volgende commando gebruiken:

robocopy "c:<bronmap>" "d:<doelmap>" /E /MIR /XX /LOG:logrc.txt

De parameter /E (empty) zorgt ervoor dat ook (lege) submappen worden meegenomen en /MIR (mirroring) regelt een exacte kopie van de data. Met de parameter /XX voorkom je dat reeds bestaande bestanden in de doelmap worden overschreven. Met de parameter /LOG:logrc.txt bewaar je alle details van de kopieeroperatie in een logbestand.

Er zijn nog veel andere parameters, die specifiek voor kopieeroperaties naar een netwerkshare nuttig kunnen zijn, zoals:

robocopy "c:<bronmap>" \nas\backup\data /ZB /R:2 /W:3 /MT:12

Met de parameter /ZB wordt de operatie in een herstartbare modus uitgevoerd. Lukt een kopieeractie slechts gedeeltelijk, dan wordt bij de volgende ronde alleen nog het resterende deel gekopieerd. Met /R geef je aan hoeveel keer robocopy een kopieeractie moet proberen en met /W geef je aan hoeveel seconden tussen elke poging wordt gewacht. Met /MT ten slotte kun je in theorie tot 128 bestanden tegelijk kopiëren (het standaardaantal is 8).

 Met commando's je Windows-systeem beheren, zo doe je dat-65031653

Robocopy: van simpele kopieeracties tot uitgekiende synchronisatie-operaties.

Zo breng je structuur aan in de chaos van bestanden op je pc: Rommeltje van gemaakt? Zo deel je je schijven overzichtelijk in

Tip 06: Bestandscontrole

Het commando chkdsk <stationsletter> is geen onbekende. Hiermee kun je snel controleren of er mogelijk beschadigingen zijn ontstaan in het bestandssysteem. Om het station ook te controleren op slechte sectoren, gebruik je de parameter /R (read). Als je eventuele fouten wilt herstellen, gebruik dan de combinatie /R /F (read en fix). Houd er wel rekening mee dat de bestanden opnieuw worden samengesteld zonder de (onleesbare) gegevens uit de corrupte sectoren. Hierdoor is het mogelijk dat je deze niet meer kunt benaderen met de gebruikelijke applicaties.

Het kan ook gebeuren dat sommige Windows-functies niet meer (goed) functioneren of dat Windows Update klaagt over systeembeschadigingen. In dat geval kun je een analyse laten uitvoeren van alle belangrijke systeembestanden. Start de Opdrachtprompt als administrator en voer het volgende uit om de gezondheidsstatus van je lokale Windows-image te controleren:

dism.exe /Online /Cleanup-image /Checkhealth

Je kunt indien gewenst een grondigere controle uitvoeren door de parameter /Checkhealth te vervangen door /ScanHealth.

Als een van beide commando’s fouten aangeeft, voer het commando dan opnieuw uit, maar vervang de laatste parameter door /RestoreHealth. Hierdoor wordt een nieuw image gecreëerd met behulp van Windows Update.

Nadat dit is voltooid, voer je sfc /scannow uit. Hiermee worden corrupte systeembestanden vervangen door de gecachete originelen. Houd er rekening mee dat dit commando behoorlijk wat tijd in beslag kan nemen.

Overigens kun je met sfc ook een specifiek systeembestand controleren wanneer je vermoedt dat dit bestand corrupt is:

sfc /verifyfile="<pad_naar_systeembestand>"

Bijvoorbeeld:

sfc /verifyfile="c:\windows\system32\kernel32.dll"

 Met commando's je Windows-systeem beheren, zo doe je dat-65033716

Windows heeft verschillende commando’s voor het opsporen en herstellen van beschadigde bestanden.

 Met commando's je Windows-systeem beheren, zo doe je dat-65033720

Een kleine greep uit Windows’ rijkgevulde arsenaal van run-commando’s.

Tip 07: Servicebeheer

Op de achtergrond zijn er altijd heel wat services actief. Je krijgt hiervan een overzicht wanneer je op Windows-toets+R drukt en services.msc uitvoert. Het kan gebeuren dat je onder bepaalde omstandigheden sommige services wel of juist niet actief wilt hebben, bijvoorbeeld tijdens het gamen. Dan is het makkelijker wanneer je zo’n service vanaf de Opdrachtprompt kunt in- of uitschakelen. Dat kan met deze commando’s:

sc start "<servicenaam>"

En:

sc stop "<servicenaam>"

Je hebt niet de weergavenaam (display name) nodig, maar de echte servicenaam, die vaak is ingekort. Je kunt deze opvragen met sc query, of met een gerichte zoekopdracht als:

sc query type=service state=all | find /i "dhcp"

In dit voorbeeld zoek je naar alle services (ongeacht de status) waarin dhcp in de naam voorkomt.

Om de servicestatus op te vragen gebruik je:

sc queryex "<servicenaam>"

Is de service actief (running), dan krijg je hiervan tevens de PID (Process Identifier) te zien (zie ook tip 8). Om een service uit te schakelen die momenteel nog automatisch met Windows wordt opgestart (bij services.msc lees je dan Automatisch af in de kolom Opstarttype) voer je het volgende commando uit:

sc config <servicenaam> start=disabled

Met start=auto laat je die alsnog weer automatisch opstarten.

 Met commando's je Windows-systeem beheren, zo doe je dat-65033726

Controleer de servicestatus en schakel services naar wens in of uit.

Tip 08: Procesbeheer

Je hebt vast weleens meegemaakt dat een toepassing niet wil afsluiten of opstarten omdat het nog actief is op de achtergrond. Hier is hoe je dat oplost.

Om te beginnen, zoek je de PID (Process Identifier) van het proces of programma op. Open Taakbeheer met Ctrl+Shift+Esc en ga naar het tabblad Processen. Daar zie je een overzicht van alle actieve toepassingen, achtergrondprocessen en Windows-processen.

Probeer het eerst door het problematische item te selecteren en rechtsonder op Beëindigen te klikken. Als dat niet werkt of als je meerdere programma’s of processen tegelijk wilt afsluiten, open dan de Opdrachtprompt als administrator en voer deze opdracht uit:

taskkill /PID <pid-nr>

Of gebruik deze opdracht om het proces geforceerd te beëindigen:

taskkill /F /PID <pid-nr>

Je kunt ook het proces stoppen aan de hand van de procesnaam. Gebruik het commando tasklist om de procesnaam en de bijbehorende PID te vinden. Vervolgens voer je dit commando uit om het proces te beëindigen:

taskkill /IM <procesnaam>

Houd er rekening mee dat er een verschil is tussen deze twee methodes. Met de procesnaam sluit je alle processen met die naam af, terwijl je met de /PID-parameter naar een specifieke procesinstantie verwijst. Als je toch ook alle bijbehorende ‘kindprocessen’ wilt beëindigen, gebruik dan de parameter /T. Om meerdere processen tegelijk af te sluiten, gebruik je de opdracht:

taskkill /PID <pid-nr1> /PID <pid-nr2> /PID <pid-nr3>

 Met commando's je Windows-systeem beheren, zo doe je dat-65033731

Tegenstribbelende processen leg je zo het zwijgen op.

Tip 09: Taakbeheer

Windows beschikt over een ingebouwde taakplanner (druk op de Windows-toets, tik taakplanner in en voer de gelijknamige toepassing uit), maar je kunt ook taken plannen en beheren vanaf de opdrachtregel of via een batchbestand.

Gebruik het commando schtasks (schedule tasks), uit te voeren als administrator. Om bijvoorbeeld een wekelijkse, automatische herstart in te plannen, voer je het volgende commando uit:

schtasks /create /sc weekly /d FRI /st 17:00 /tn "autoherstart" /tr "shutdown -r -f -t 30"

De parameters spreken voor zich: /sc weekly betekent wekelijks, maar er zijn andere opties zoals hourly, daily, monthly, once, onstart, onlogon en onidle. Achter /d voer je de eerste drie letters van de dagen in (in het Engels), achter /tn vul je de taaknaam in en achter /st komt de starttijd. Achter /tr voer je tussen aanhalingstekens het gewenste commando of het volledige pad naar de gewenste applicatie in. In ons voorbeeld hebben we het ingebouwde commando shutdown gebruikt, maar dit kan net zo goed om een externe toepassing gaan, zoals:

schtasks /create /sc onlogon /tn "Chrome" /tr "C:\Program Files (x86)\Google\Chrome\Application\chrome.exe"

Met het schtasks /change kun je een taak aanpassen en hiermee verwijder je een taak:

schtasks /delete /tn "<bestaande_taaknaam>"

 Met commando's je Windows-systeem beheren, zo doe je dat-65033734

Taken beheren kan net zo goed (en veel vlugger) vanaf de Opdrachtprompt.

Tip 10: Cpu-beheer

Windows verdeelt de processortijd over toepassingen of processen op basis van prioriteit. Hoe hoger de prioriteit, hoe meer processortijd voor een proces. Naast prioriteit beïnvloedt ook affiniteit de procesprestaties. Affiniteit verwijst naar de processorkern(en) waarop een proces wordt uitgevoerd. Standaard voert Windows een proces uit op alle processorkernen, maar je kunt ook zelf bepalen op hoeveel en welke kernen dit moet gebeuren.

Je kunt zowel de prioriteit als de affiniteit instellen via Taakbeheer, maar op die manier is zo’n aanpassing alleen geldig voor de huidige Windows-sessie.

Als je applicaties wilt starten met een vaste prioriteit en/of affiniteit, moet je een andere methode gebruiken. Klik met de rechtermuisknop op de snelkoppeling van de gewenste applicatie en kies Eigenschappen. Ga naar het tabblad Snelkoppeling en vul het Doelveld in als volgt:

cmd.exe /c start "<programmanaam>" /<prioriteit> /affinity <#> "<programmapad>"

Bijvoorbeeld:

cmd.exe /c start "Steam" /high /affinity F0 "C:\Program Files (x86)\Steam\steam.exe"

Om de prioriteit aan te geven, gebruik je een van de volgende parameters: /low, /belownormal, /normal, /abovenormal, /high (of /realtime). De affiniteit wordt aangegeven met een hexadecimaal getal.

Stel, je cpu heeft acht kernen en je wilt de vier hoogste gebruiken, dan is dat in binaire vorm 11110000 (1 voor de vier hoogste; 0 voor de vier laagste). In hexadecimale notatie wordt dat F0. Je kunt een omrekenhulpmiddel gebruiken, bijvoorbeeld via deze webpagina.

Hier ga je dus niet zelf naar de Opdrachtprompt, maar laat je deze door de applicatie oproepen (met cmd.exe /c start) en uitvoeren. Dit is dus ook mogelijk.

 Met commando's je Windows-systeem beheren, zo doe je dat-65033998

Je kunt een vaste cpu-prioriteit en -affiniteit geven aan een applicatie.

Tip 11: Batch(lus)

Een van de grote voordelen van opdrachtregelcommando’s is hun naadloze integratie in batchscripts. Je hoeft alleen maar het batch-bestand uit te voeren – of het op te nemen in de Windows Taakplanner voor verdere automatisering – om alle opgenomen commando’s achtereenvolgens uit te voeren. Standaard gebeurt dit in chronologische volgorde: eerst het eerste commando, dan het tweede enzovoort. Maar ook complexere batch-constructies zijn mogelijk, zoals het uitvoeren van een lus.

Een voorbeeld verduidelijkt dit. Stel dat je een map hebt met talrijke bestanden en je automatisch alle bestanden van bepaalde typen wilt verwijderen, kopiëren of verplaatsen. Typ dan de volgende regels in Kladblok en sla het bestand op met de extensie .bat of .cmd (dus niet .txt):

 Met commando's je Windows-systeem beheren, zo doe je dat-65034534

De eerste en laatste regel zijn optioneel en dienen alleen om feedback aan de gebruiker te geven. Alle actie staat in de tweede regel. Deze zorgt ervoor dat alle bestanden met de opgenomen extensies (hier bak, tmp, jpg, log en txt) direct worden verwijderd. Plaats het gewenste pad tussen de aanhalingstekens. De parameter /s verwijdert ook bestanden in onderliggende submappen.

Om bestanden te kopiëren in plaats van te verwijderen, gebruik je:

for %%v in (bak tmp jpg log txt) do copy "<bronpad>" "<doelpad>"

Voor verplaatsen gebruik je:

for %%v in (bak tmp jpg log txt) do move "<bronpad>" "<doelpad>"

 Met commando's je Windows-systeem beheren, zo doe je dat-65034006

Wis, kopieer of verplaats in één keer alle bestanden met specifieke extensies.

Tip 12: Omgevingsvariabelen

Wanneer je een batchbestand wilt uitvoeren vanaf de Opdrachtprompt, moet je meestal eerst naar de map met dat batchbestand navigeren. Je kunt dit efficiënter doen door het pad naar je batchbestanden, scripts of andere opdrachtregeltools toe te voegen aan de omgevingsvariabelen van Windows.

Om dit te doen, start je de Opdrachtprompt op als administrator. Gebruik het commando set om een overzicht van de omgevingsvariabelen te krijgen, inclusief de variabele path. Met echo %path% krijg je alleen de inhoud van de path-variabele te zien. Voeg het volledige pad naar de map met de batchbestanden toe aan de path-variabele met het volgende commando:

setx path "%path%;<volledig_pad_naar_map>" /M

Bijvoorbeeld iets als:

setx path "%path%;c:\data\mijnscripts" /M

De parameter /M staat voor machine en zorgt ervoor dat het pad systeemwijd wordt toegevoegd.

 Met commando's je Windows-systeem beheren, zo doe je dat-65034529

Onze omgevingsvariabele path is blijkbaar wat uit zijn voegen gegroeid. 

 Met commando's je Windows-systeem beheren, zo doe je dat-65034528

WSCC: zo’n driehonderd handige systeemtools vanuit één venster, zowel grafisch als op de opdrachtregel.

0

Powered by

logo
Deel dit artikel
Voeg toe aan favorieten
ID.nl logo

ID.nl, onderdeel van Reshift BV, is in 2022 gestart en uitgegroeid tot de meest toonaangevende en complete consumentensite van Nederland. Het doel van ID.nl is om de consument te helpen met alle technologie die hoort bij het dagelijks leven: van smart-health-meters tot e-bikes, van warmtepompen tot zonnepanelen - en alles daar tussenin!

Duidelijk, betrouwbaar en onafhankelijk: ID.nl maakt moeilijke dingen makkelijk.

Contact

ID.nl

Nijverheidsweg 18

2031 CP Haarlem

info@id.nl

Telefoon: 023-5430000