Latest / M365.FM – Microsoft 365, Copilot & AI podcast in het Nederlands / PowerShell vs CMD: waarom objecten alles veranderen bij Windows-automatisering (AI-nasynchronisatie)
Transcript
- 0:00Speaker 2: Welkom bij weer een nieuwe aflevering van Microsoft Knowledge Nuggets
- 0:02Speaker 2: op M365FM. Ik ben je host Milko Peters. Wat als
- 0:06Speaker 2: ik je vertelde dat er een tool op je computer
- 0:07Speaker 2: staat die bijna alles kan automatiseren? Denk eens aan je
- 0:10Speaker 2: normale werkdag. Je logt in, opent een paar applicaties, klikt
- 0:13Speaker 2: door dezelfde menus als gisteren, draait dezelfde rapporten, controleert dezelfde services.
- 0:17Speaker 2: Misschien ben je een uur bezig met iets dat in
- 0:19Speaker 2: vijf minuten klaar zou moeten zijn. Die tool waar ik
- 0:21Speaker 2: het over heb, is PowerShell. Aan het einde van deze
- 0:24Speaker 2: aflevering begrijp je wat PowerShell echt is, hoe de commando's
- 0:27Speaker 2: werken en waarom het de verborgen superkracht van het Microsoft-ecosysteem is.
- 0:31Speaker 2: We beginnen bij het basisidee, doorlopen de bouwstenen en aan
- 0:34Speaker 2: het einde heb je echte automatisering die je vandaag nog
- 0:36Speaker 2: kunt gebruiken. Het grote plaatje, wat PowerShell eigenlijk is. Dus,
- 0:40Speaker 2: wat is PowerShell precies? De meeste mensen horen de naam
- 0:42Speaker 2: en denken dat het gewoon een hippe opdrachtprompt is. Dat
- 0:44Speaker 2: is het niet. PowerShell is een volledig automatiseringsplatform. Zie het
- 0:47Speaker 2: als een command line shell, een scriptaal en een tool
- 0:50Speaker 2: voor beheer op afstand in één. In de command line
- 0:52Speaker 2: shell typ je commando's en krijg je resultaten, maar het
- 0:55Speaker 2: is ook een scriptaal waarmee je programma's schrijft die zelfstandig
- 0:57Speaker 2: draaien en een beheertool waarmee je tientallen of honderden machines
- 1:00Speaker 2: vanuit één venster bestuurt. Twintig jaar geleden betekende automatisering op
- 1:04Speaker 2: Windows een rommelige verzameling van verschillende tools. Je gebruikte batchbestanden
- 1:07Speaker 2: voor simpele taken, VBScript voor complexere zaken en aparte beheerconsoles
- 1:11Speaker 2: voor Exchange, Active Directory en Best & Servers. Geen van
- 1:14Speaker 2: die tools communiceerde met elkaar. Je kopieerde gegevens van de
- 1:16Speaker 2: ene tool, plakte ze in de andere en hoopte dat
- 1:18Speaker 2: er niets verloren ging. PowerShell heeft dat allemaal veranderd. Het
- 1:21Speaker 2: is één tool die met alles communiceert. Windows zelf, Azure,
- 1:24Speaker 2: Microsoft 365, Exchange, Teams, SharePoint. Active Directory en tegenwoordig zelfs Linux-machines.
- 1:29Speaker 2: Je gebruikt dezelfde taal, dezelfde patronen en dezelfde commando's, ongeacht
- 1:32Speaker 2: wat je aanstuurt. En het is platformonafhankelijk. PowerShell 7 draait
- 1:35Speaker 2: op Windows, Linux en macOS. Dus in een gemengde omgeving
- 1:38Speaker 2: hoef je niet van tool te wisselen. Dit is de
- 1:39Speaker 2: kern van het verhaal. Als je in IT werkt, is
- 1:42Speaker 2: PowerShell de taal van het Microsoft-ecosysteem. Het is de manier
- 1:45Speaker 2: waarop je communiceert met je infrastructuur en het saaie werk automatiseert,
- 1:47Speaker 2: zodat je je kunt concentreren op de interessante problemen. Maar
- 1:49Speaker 2: voordat we in de mogelijkheden duiken, laten we kijken hoe
- 1:52Speaker 2: het echt werkt. Het werkwoord zelfstandig naamwoord patroon hoe PowerShell
- 1:55Speaker 2: commando's werken. Elk PowerShell commando volgt een simpel patroongenaamd werkwoord
- 1:59Speaker 2: zelfstandig naamwoord. En het is precies wat het zegt. Het
- 2:01Speaker 2: werkwoord vertelt je wat je wilt doen. Get, set, new, remove, start, stop.
- 2:06Speaker 2: En het zelfstandig naamwoord vertelt je wat het doelwit is.
- 2:08Speaker 2: Zoals process, service, user, item of mailbox. Dus get process
- 2:12Speaker 2: geeft je een lijst met actieve processen. Get service toont
- 2:14Speaker 2: je alle services op je computer. Set date verandert de systeemtijd.
- 2:17Speaker 2: Stop service stopt een service. Het patroon is zo consistent
- 2:20Speaker 2: dat je, zodra je het kent... Commando's kunt raden die
- 2:22Speaker 2: je nog nooit hebt gezien. Wil je een service starten?
- 2:24Speaker 2: Typ Start Service. Moet je een gebruiker verwijderen? Typ Remove User.
- 2:28Speaker 2: Zo eenvoudig is het. PowerShell is ontworpen om ontdekbaar te zijn,
- 2:32Speaker 2: dus je hoeft geen honderden commando's uit je hoofd te leren.
- 2:34Speaker 2: Je beste vriend hier is de GetCommandCMDlet. Voer GetCommandNowService uit
- 2:39Speaker 2: en het toont elk commando dat met services werkt. Get Service,
- 2:42Speaker 2: Start Service, Stop Service, Restart Service, Set Service, New Service,
- 2:46Speaker 2: Remove Service. Ze staan er allemaal door er simpelweg om
- 2:48Speaker 2: te vragen. Laat me je een concreet voorbeeld geven. Stel
- 2:50Speaker 2: dat je wilt weten welke commando's processen kunnen beheren. Je
- 2:53Speaker 2: voert Get Command Now Process uit. Je krijgt Get Process,
- 2:56Speaker 2: Start Process, Debug Process, Wait Process terug. Je hoeft niet
- 2:59Speaker 2: te gissen, de tool vertelt het je. Dat is wat
- 3:01Speaker 2: PowerShell zo anders maakt dan ouderwetse opdrachtregelprogramma's waarbij je elke
- 3:05Speaker 2: vlag en schakelaar moest onthouden. En dit is waarom dat
- 3:07Speaker 2: belangrijk is. Je leert PowerShell niet door duizend commando's uit
- 3:09Speaker 2: je hoofd te leren. Je leert het patroon en de
- 3:11Speaker 2: rest kun je onderweg uitvogelen. Het is alsof je leert
- 3:14Speaker 2: dat elk werkwoord in een taal dezelfde vervoeging volgt. Zodra
- 3:16Speaker 2: je de regel kent, kun je deze overal toepassen. Maar
- 3:19Speaker 2: dit is waar PowerShell zich echt onderscheidt van al het andere. Objecten,
- 3:22Speaker 2: geen tekst, dat is de game changer. Dus dit is
- 3:25Speaker 2: wat PowerShell fundamenteel anders maakt dan elke opdrachtregel toe die
- 3:28Speaker 2: eraan vooraf ging. Traditionele opdrachtregels voeren tekst uit. Je voert
- 3:31Speaker 2: een commando uit en krijgt regels met tekens op je scherm,
- 3:34Speaker 2: en dat is het. Als je iets met die uitvoer
- 3:36Speaker 2: wilt doen, moet je het parsen, in stukken snijden... De
- 3:38Speaker 2: benodigde delen extraheren met tekenreeksmanipulatie, en dat is fragiel. Eens
- 3:41Speaker 2: spatie op de verkeerde plek en je hele script loopt vast.
- 3:44Speaker 2: PowerShell werkt niet op die manier. Het geeft je objecten,
- 3:47Speaker 2: gestructureerde data met eigenschappen en methoden. Wanneer je getProcess uitvoert,
- 3:50Speaker 2: krijg je geen teksttabel. Je krijgt procesobjecten. Elk object heeft
- 3:53Speaker 2: eigenschappen zoals naam, ID, CPU, geheugen, starttijd en methoden zoals kill.
- 3:57Speaker 2: Je kunt die eigenschappen opvragen, erop filteren, ze sorteren en exporteren.
- 4:00Speaker 2: Je kunt dingen met data doen die normaal 20 regels
- 4:02Speaker 2: tekstverwerking kosten, in slechts één opdracht. Dat is wat het
- 4:05Speaker 2: verschil maakt. Laat me het je laten zien. Op de
- 4:07Speaker 2: oude manier, met het tasklist, commando in de opdracht prompt,
- 4:10Speaker 2: krijg je een teksttabel. Als je processen wilt vinden die
- 4:12Speaker 2: meer dan 50% CPU verbruiken, moet je logica schrijven om
- 4:15Speaker 2: de tekst te ontleden. Je moet rekening houden met kolombreedtes,
- 4:17Speaker 2: witruimte en kopteksten. Het is rommelig en het gaat constant mis.
- 4:20Speaker 2: De PowerShell manier ziet er zo uit. GetProcess doorgestuurd naar
- 4:23Speaker 2: WhereObject met een voorwaarde, doorgestuurd naar ExportCSV. Dat is één regel.
- 4:27Speaker 2: Filter alleen processen met meer dan 50% CPU. Sla op
- 4:29Speaker 2: in een CSV-bestand. Klaar. Wat dit alles mogelijk maakt is
- 4:32Speaker 2: de GetMemberCMDlet. Je stuurt elk commando door naar get member
- 4:35Speaker 2: en het toont je elke eigenschap en methode van die objecten.
- 4:37Speaker 2: Het is alsof je onder de motorkap kijkt. Voer get
- 4:39Speaker 2: process en get member uit en plotseling zie je alles. Naam, ID, handle, CPU,
- 4:44Speaker 2: working set, starttijd en methoden zoals kill, refresh, wait for exit.
- 4:47Speaker 2: Je hoeft niet te raden welke data beschikbaar is. De
- 4:49Speaker 2: tool vertelt het je. Hier is een praktijkvoorbeeld. Stel, je
- 4:52Speaker 2: bent beheerder van 50 servers. Je moet alle gestopte services
- 4:55Speaker 2: op al die servers vinden. Op de oude manier zou
- 4:57Speaker 2: je op elke server inloggen, services MSC openen, handmatig controleren
- 5:00Speaker 2: en noteren. Dat kost uren. Op de PowerShell manier schrijf
- 5:03Speaker 2: je één commando. Get service op elke machine, filter waar status, stapt, is,
- 5:07Speaker 2: exporteer naar een CSV. Eén commando, 50 servers, elke keer
- 5:10Speaker 2: hetzelfde resultaat. Niet klikken door guis, geen handmatige notities, geen
- 5:13Speaker 2: fouten door gegevens kopiëren tussen vensters. En dit is waarom
- 5:15Speaker 2: dit belangrijk is. Object output betekent dat je commando's aan
- 5:18Speaker 2: elkaar kunt koppelen. De uitvoer van één commando gaat direct
- 5:21Speaker 2: door naar de volgende als gestructureerde data. Je bent geen
- 5:23Speaker 2: tekst aan het verwerken, je bent objecten aan het manipuleren.
- 5:26Speaker 2: Het is het verschil tussen het sorteren van een stapel
- 5:28Speaker 2: losse papieren en werken met een archiefkast waar alles een
- 5:30Speaker 2: label heeft. Dus, nu ken je het patroon en de pipeline.
- 5:33Speaker 2: Laten we praten over de commando's die je echt zult gebruiken.
- 5:35Speaker 2: De vijf essentiële CMD-led groepen. Je hoeft geen honderden CMD-leds
- 5:39Speaker 2: te leren om productief te zijn met PowerShell. Begin met
- 5:41Speaker 2: vijf groepen en je dekt ongeveer 80% van wat je
- 5:44Speaker 2: dagelijks doet. Groep 1 is ontdekking. Het is de belangrijkste
- 5:47Speaker 2: omdat het je PowerShell vanuit zichzelf leert. Get help, get command,
- 5:51Speaker 2: get member, deze drie zijn je leermiddelen. Je hoeft niets
- 5:53Speaker 2: uit je hoofd te leren, want je kunt het altijd opzoeken.
- 5:56Speaker 2: Get help laat zien hoe je elk commando gebruikt. GetCommand
- 5:58Speaker 2: toont welke commando's er zijn en GetMember laat zien welke
- 6:01Speaker 2: gegevens die commando's opleveren. Als je niets anders leert, leer
- 6:04Speaker 2: dan deze drie. Groep 2 is Bestandssysteem voor de dagelijkse
- 6:07Speaker 2: best en staken die je constant uitvoert. GetChildItem somt bestanden
- 6:10Speaker 2: en mappen op, CopyItem kopieert ze, RemoveItem verwijdert ze en
- 6:13Speaker 2: GetContent leest bestandsinhoud. Je kunt in één regel doen waarvoor
- 6:16Speaker 2: je anders door meerdere mapvensters zou moeten klikken. Groep 3
- 6:19Speaker 2: is Systeem voor het beheer van wat er op je
- 6:21Speaker 2: computer draait. GetProcess toont actieve processen, GetService toont services en
- 6:25Speaker 2: StartService en StopService besturen deze. Restart Computer start een machine
- 6:29Speaker 2: opnieuw op. Als je ooit taakbeheer of services MSC hebt geopend,
- 6:33Speaker 2: deze commando's vervangen dat volledig en ze werken op afstand.
- 6:35Speaker 2: Je kunt services op 100 machines controleren zonder je bureau
- 6:38Speaker 2: te verlaten. Groep 4 is filteren en vormgeven waar de
- 6:41Speaker 2: pipeline echt uitblinkt. Where object filtert gegevens op basis van voorwaarden,
- 6:45Speaker 2: Select Object kiest welke eigenschappen je ziet, Sort Object sorteert
- 6:48Speaker 2: resultaten en Group Object groepeert ze. Deze CMD-lets veranderen ruwe
- 6:51Speaker 2: data in nuttige informatie. Zonder deze dump je alleen maar
- 6:54Speaker 2: gegevens op het scherm. Met deze kun je specifieke vragen
- 6:57Speaker 2: stellen en specifieke antwoorden krijgen. Groep 5 is exporteren, hoe
- 7:00Speaker 2: je je werk opslaat. Export CSV schrijft naar een bestand
- 7:03Speaker 2: dat je in Excel opent, Outfile schrijft naar een tekstbestand
- 7:06Speaker 2: en Convert to JSON zet om naar JSON-formaat. Met deze
- 7:08Speaker 2: CMD-lets verander je commando's in rapporten, logboeken of databestanden. Je
- 7:12Speaker 2: voert een commando uit, filtert de resultaten en slaat ze op.
- 7:14Speaker 2: Dat is een rapport, dat is automatisering. Hier is een
- 7:17Speaker 2: kort voorbeeld voor elke groep. Bij Discovery voer je Get
- 7:20Speaker 2: Command Now Service uit om elk service gerelateerd commando te zien.
- 7:23Speaker 2: Bij Bestandssysteem vindt Get Child Item C, Logs Recurse. Where
- 7:28Speaker 2: Object lengt GT 10 MB grote logbestanden. Voor Systeem somt
- 7:32Speaker 2: Get Service. Where Object Status EQ stapt de gestopte services op.
- 7:36Speaker 2: Voor Filteren toont Get Process. Soort Object CPU de zending.
- 7:40Speaker 2: Select Object First 5 de 5 grootste CPU gebruikers. En
- 7:43Speaker 2: voor export gebruik je GetService. Export csvservices.csv. CSV slaat alles
- 7:48Speaker 2: op in een bestand. Dit is waarom dit belangrijk is.
- 7:50Speaker 2: Deze vijf groepen dekken het overgrote deel van wat je
- 7:52Speaker 2: zult doen. Je hoeft geen PowerShell expert te zijn, zolang
- 7:55Speaker 2: je maar weet waar je moet beginnen. En de beste
- 7:57Speaker 2: plek om te beginnen is de groep die je al
- 7:58Speaker 2: het andere leert. Laten we het over Discovery hebben. Discovery eerst, GetHelp, GetCommand, GetMember.
- 8:04Speaker 2: Laat me je vertellen over de allerbelangrijkste CMD-let die je
- 8:07Speaker 2: ooit zult leren, GetHelp. Het is de ingebouwde handleiding van PowerShell.
- 8:10Speaker 2: Typ get help gevolgd door een opdrachtnaam en je ziet
- 8:13Speaker 2: de syntaxes, parameters en, het belangrijkste, werkende voorbeelden. Je hoeft
- 8:17Speaker 2: niet op internet te zoeken of iets uit je hoofd
- 8:18Speaker 2: te leren. De documentatie zit gewoon in de tool zelf.
- 8:21Speaker 2: Stel dat je wilt begrijpen hoe get process werkt. Typ
- 8:24Speaker 2: get help get process en het toont je de syntaxes,
- 8:26Speaker 2: welke parameters het accepteert en wat die elk doen. Maar
- 8:29Speaker 2: de echte waarde zit in de voorbeelden, get help get
- 8:31Speaker 2: process examples. Voorbeelden springen direct naar werkende code die je
- 8:34Speaker 2: kunt kopiëren en uitvoeren. Zo leer je PowerShell vanuit PowerShell zelf.
- 8:38Speaker 2: Dan is er nog get command. Deze cmdlet somt alles
- 8:41Speaker 2: op wat beschikbaar is in je sessie, elke cmdlet, functie
- 8:44Speaker 2: en script. En je kunt het filteren. Get command verb get.
- 8:48Speaker 2: GET toont je elk GET-commando, en daar zijn er honderden van. GET-proces, GET-service, GET-date, GET-item, GET-child-item, GET-content.
- 8:56Speaker 2: Je hoeft het alleen maar te vragen. GET-command-noun-service toont je
- 8:59Speaker 2: elk commando dat met services werkt. GET-service, START-service, STOP-service, RESTART-service, ZET-service, NEW-service, REMOVE-service.
- 9:06Speaker 2: Je hoeft niet te raden wat er beschikbaar is. De
- 9:08Speaker 2: tool vertelt dit je. En dan is er nog GET-member,
- 9:10Speaker 2: degene die alles ontsluit. Pipe elk commando naar GET-member en
- 9:14Speaker 2: het laat zien wat er in de objecten zit die
- 9:16Speaker 2: het commando teruggeeft. Voer Get Process, Get Member uit en
- 9:20Speaker 2: je ziet elke eigenschap en methode van procesobjecten. Namen, ID, CPU,
- 9:25Speaker 2: Working Set, Starttijd en methoden zoals Kill, Refresh, Wait for Exit.
- 9:29Speaker 2: Je hoeft je niet af te vragen welke data beschikbaar is.
- 9:31Speaker 2: Je kunt het direct inspecteren. Waarom dit belangrijk is? Je
- 9:34Speaker 2: hoeft nooit alles uit je hoofd te leren. Je kunt
- 9:36Speaker 2: leren terwijl je bezig bent. Get Help leert je hoe
- 9:38Speaker 2: je commando's gebruikt. GetCommand laat zien welke commando's er bestaan
- 9:41Speaker 2: en GetMember laat zien welke data die commando's teruggeven. Deze
- 9:44Speaker 2: drie CMD-lets zijn je leermiddelen. Ze maken PowerShell zelfdocumenterend. Zodra
- 9:49Speaker 2: je weet wat er beschikbaar is, is de volgende stap
- 9:51Speaker 2: het vormgeven van die data tot iets nuttigs. Filteren, vormgeven
- 9:53Speaker 2: en exporteren, opdrachten, omzetten in rapporten. Dit is het punt
- 9:57Speaker 2: met PowerShell. De kracht zit niet in één enkel commando,
- 10:00Speaker 2: maar in hoe je ze combineert via de pipeline. Je
- 10:02Speaker 2: neemt de uitvoer van de ene CMD-LED-pipe die naar de
- 10:04Speaker 2: andere en bouwt complexe operaties met eenvoudige bouwstenen. Where-object is
- 10:09Speaker 2: je filter dat alleen objecten doorlaat die aan je voorwaarden voldoen. Dus,
- 10:12Speaker 2: Get Service, Where Object Status EQ Running geeft je alleen
- 10:16Speaker 2: actieve services. Niet meer scrollen door een lijst van 100 services.
- 10:19Speaker 2: Het commando doet het filterwerk voor je. Select Object kiest
- 10:23Speaker 2: welke eigenschappen je wilt zien. Get Process Select Object Namen, CPU,
- 10:27Speaker 2: Working Set geeft alleen de data die voor jou relevant is.
- 10:30Speaker 2: Het verwijdert handles, paged memory en sessie-ID's en laat alleen
- 10:34Speaker 2: de kolommen zien waar je om vroeg. Zo verander je
- 10:36Speaker 2: een berg data in een overzichtelijke, leesbare tabel. Sort Object
- 10:40Speaker 2: ordent je resultaten. Get Process Sort Object CPU Descending toont
- 10:44Speaker 2: eerste processen met het hoogste CPU-gebruik, zodat je het probleem
- 10:47Speaker 2: direct vindt in plaats van een ongesorteerde lijst te doorzoeken.
- 10:50Speaker 2: Export CSV slaat alles op in een bestand dat je
- 10:53Speaker 2: in Excel kunt openen. Dit is waar de magie gebeurt.
- 10:55Speaker 2: Je voert een commando uit, filtert het, vormt het en
- 10:58Speaker 2: slaat het op. Dat is een rapport en dat is automatisering.
- 11:00Speaker 2: Hier is het volledige patroon samengevoegd. Dat Serviceware object status
- 11:04Speaker 2: eq stapt select object name, display name export csv stapt services.csv.
- 11:10Speaker 2: Het is één commando dat alle services ophaalt, filtert op
- 11:12Speaker 2: gestopte services, alleen de naam en weergavenaam kiest en het
- 11:15Speaker 2: resultaat opslaat in een csv bestand. Je kunt dit op
- 11:17Speaker 2: één machine of op honderd draaien en je krijgt elke
- 11:19Speaker 2: keer hetzelfde resultaat. Dit vervangt urenlang klikken door GUI's en
- 11:22Speaker 2: handmatig kopiëren en plakken. In plaats van op elke server
- 11:25Speaker 2: Services MSC te openen, door de lijst te scrollen, op
- 11:28Speaker 2: te schrijven wat gestopt is en dit in een spreadsheet
- 11:30Speaker 2: te typen, voer je één commando uit. Het duurt seconden,
- 11:32Speaker 2: is nauwkeurig en is herhaalbaar. Waarom is dit belangrijk? Je
- 11:35Speaker 2: gaat van reactief naar proactief werken. Je kunt deze rapporten
- 11:38Speaker 2: op een schema draaien. Elke ochtend controleert een script je Services,
- 11:42Speaker 2: exporteert de resultaten en e-mailt deze naar je toe. Je
- 11:44Speaker 2: ziet problemen voordat ze noodgevallen worden, omdat je weet wat draait,
- 11:47Speaker 2: wat gestopt is en wat aandacht nodig heeft. In plaats
- 11:49Speaker 2: van te wachten tot er iets kapot gaat, blijf je
- 11:51Speaker 2: het voor. Dus nu heb je de onderdelen, de ontdekkingstools
- 11:54Speaker 2: om te zien wat beschikbaar is, de filtertools om te
- 11:56Speaker 2: vinden wat belangrijk is en de exporttools om je resultaten
- 11:58Speaker 2: op te slaan. Laten we kijken hoe ze allemaal samenkomen
- 12:01Speaker 2: in één systeem. Hoe het allemaal verbonden is, de pipeline
- 12:04Speaker 2: in actie. De pipeline is het hart van PowerShell, niet
- 12:07Speaker 2: zomaar een functie. Elke CMD-led voert objecten uit en de
- 12:10Speaker 2: pipeline stuurt die objecten direct door naar de volgende CMD-led.
- 12:13Speaker 2: Dat simpele idee is wat PowerShell zo krachtig maakt. Je
- 12:16Speaker 2: bouwt complexe bewerkingen op uiteenvoudige bouwstenen, stap voor stap. Laat
- 12:19Speaker 2: me een praktijkscenario geven. Stel dat een gebruiker belt omdat
- 12:22Speaker 2: hun account is vergrendeld. Dit gebeurt de hele tijd. Iemand
- 12:25Speaker 2: typt het wachtwoord te vaak verkeerd in en kan plotseling
- 12:27Speaker 2: niet meer inloggen. De oude manier om dit af te
- 12:30Speaker 2: handelen is erg vervelend. Je opent Active Directory gebruikers en computers,
- 12:34Speaker 2: scrolt door de lijst, zoekt de gebruiker, klikt met de rechtermuisknop,
- 12:37Speaker 2: controleert het account, ontgrendelt het, opent dan de logboeken om
- 12:40Speaker 2: de vergrendelingsgebeurtenis te vinden en noteert handmatig de tijd en bron.
- 12:43Speaker 2: Dat hele proces kost 5 tot 10 minuten per gebruiker.
- 12:46Speaker 2: En als meerdere gebruikers bellen, ben je de hele ochtend
- 12:48Speaker 2: met dit ene ding bezig. De PowerShell-manier is compleet anders.
- 12:52Speaker 2: Een commando, get adhouser, filter, locked out eq true, vindt
- 12:56Speaker 2: elk vergrendeld account in je domein. Dan stuur je dat
- 12:58Speaker 2: via een pipe naar unlock ad account, en dat is alles.
- 13:00Speaker 2: Het script vindt de vergrendelde accounts en ontgrendelt ze, daarna
- 13:03Speaker 2: stuur je het resultaat naar een logfunctie of exporteer je
- 13:05Speaker 2: het naar een rapport. Je hebt een overzicht van wat
- 13:07Speaker 2: er is gebeurd, wanneer het gebeurde en welke accounts getroffen waren,
- 13:09Speaker 2: allemaal met één regelcode. En het mooie is, hetzelfde patroon
- 13:13Speaker 2: werkt overal. Exchange mailboxen, teams, kanalen, SharePoint sites, Azure bronnen,
- 13:17Speaker 2: de CMD-lets veranderen, maar de pipeline blijft hetzelfde. Je haalt
- 13:20Speaker 2: iets op, filtert het, doet er iets mee en slaat
- 13:22Speaker 2: het resultaat op. Bijvoorbeeld, get mailbox, filteren op een voorwaarde,
- 13:25Speaker 2: een eigenschap instellen, exporteren naar CSV of een team ophalen,
- 13:28Speaker 2: filteren op lidmaatschap, een lid toevoegen en de wijziging loggen.
- 13:31Speaker 2: Het patroon is elke keer identiek. Waarom is dit belangrijk?
- 13:34Speaker 2: Zodra je de pipeline begrijpt, kun je bijna alles automatiseren.
- 13:37Speaker 2: Het patroon is hetzelfde of je nu één gebruiker beheert
- 13:40Speaker 2: of duizend, één server of honderd. Je leert het patroon
- 13:42Speaker 2: één keer en past het overal toe. Oké, je hebt
- 13:45Speaker 2: gezien wat het is en hoe het werkt. Laten we
- 13:47Speaker 2: het nu hebben over wat je daadwerkelijk als volgende moet doen.
- 13:49Speaker 2: Je eerste stappen naar automatisering. Dus, waar begin je? Open
- 13:52Speaker 2: PowerShell en voer Get Help uit om te beginnen met verkennen.
- 13:55Speaker 2: Typ Get Help, Get Process en kijk wat het je
- 13:57Speaker 2: laat zien. Typ daarna Get Help, Get Service Examples en
- 14:00Speaker 2: bekijk de werkende voorbeelden. Dit is hoe je de tool
- 14:02Speaker 2: vanuit de tool zelf leert kennen. Je hoeft niet op
- 14:04Speaker 2: internet te zoeken of tutorials te bekijken. De documentatie staat
- 14:08Speaker 2: er gewoon. Kies vervolgens één taak die je elke week uitvoert.
- 14:10Speaker 2: Misschien is het controleren welke services op een server draaien,
- 14:13Speaker 2: bestanden in een map vermelden of een rapport exporteren. Schrijf
- 14:15Speaker 2: er een one-liner voor en begin simpel. Iets als dead service,
- 14:19Speaker 2: where object status EQ running. Dat is een one-liner. Voer
- 14:22Speaker 2: het uit, bekijk de uitvoer en sla het op. Je
- 14:23Speaker 2: hebt zojuist iets geautomatiseerd wat je voorheen handmatig deed. Gebruik
- 14:26Speaker 2: daarna get command en get member om te ontdekken wat
- 14:28Speaker 2: er mogelijk is. Je hoeft niet alles vooraf te weten,
- 14:30Speaker 2: alleen hoe je vindt wat je nodig hebt. Get command
- 14:33Speaker 2: non-service toont je elk service gerelateerd commando en get process.
- 14:37Speaker 2: Get member toont je elke eigenschap van procesobjecten. De tool
- 14:40Speaker 2: vertelt je wat hij kan, je hoeft het alleen maar
- 14:42Speaker 2: te vragen. De beste eerste stap is simpel. Automatiseer de
- 14:44Speaker 2: taak die je het vaakst uitvoert. Zelfs een simpele one-liner
- 14:47Speaker 2: bespaart je tijd. Als je elke ochtend services controleert, schrijf
- 14:50Speaker 2: dan een one-liner die dat voor je doet. Als je
- 14:52Speaker 2: elke week tijdelijke bestanden opruimt, schrijf dan een one-liner die
- 14:54Speaker 2: dit regelt. Begin klein en bouw vanaf daar verder. Wat
- 14:57Speaker 2: is nu de volgende stap? Microsoft Learn heeft gratis PowerShell leertrajecten.
- 15:01Speaker 2: Ze zijn gestructureerd, praktisch en volledig gratis. De PowerShell Gallery
- 15:05Speaker 2: heeft duizenden community modules, dus waarschijnlijk heeft iemand al een
- 15:08Speaker 2: module geschreven voor wat je wilt doen. Je hoeft het
- 15:10Speaker 2: wiel niet opnieuw uit te vinden. PowerShell is een vaardigheid,
- 15:12Speaker 2: niet zomaar een tool. Hoe meer je het gebruikt, hoe
- 15:14Speaker 2: beter het klikt. Je hoeft geen ontwikkelaar te zijn. Je
- 15:17Speaker 2: moet alleen beginnen. Tien minuten per dag is genoeg om
- 15:19Speaker 2: echt vaardig te worden. Voer vandaag één commando uit, morgen twee,
- 15:22Speaker 2: en voor je het weet automatiseer je dingen waarvan je
- 15:24Speaker 2: nooit dacht dat het kon. Dat is dus PowerShell, de
- 15:27Speaker 2: taal die het hele Microsoft-ecosysteem verbindt. Open het en voer
- 15:30Speaker 2: Get Process uit om te zien hoe het eruit ziet.
- 15:32Speaker 2: Abonneer je voor meer kennis en laat in een reactie
- 15:34Speaker 2: weten wat je wilt automatiseren. Wat is één taak die
- 15:36Speaker 2: je graag zou willen automatiseren? Laat het me weten. Misschien
- 15:39Speaker 2: behandel ik het in een toekomstige aflevering.