- Om een Winget-script te maken voor het installeren en bijwerken van apps op Windows 11, gebruikt u een batchbestand met een lijst van app-ID's.
- Het script controleert of elke app is geïnstalleerd. Zo niet, dan installeert het de app, en als de app wel is geïnstalleerd, controleert het op updates en installeert deze.
- Je kunt het script handmatig uitvoeren, vanuit de map Opstarten, of als een geplande taak.
Op Windows 11 kun je een eenvoudig script maken om je favoriete apps automatisch te downloaden, installeren en bijwerken telkens wanneer het systeem opstart. In deze handleiding laat ik je precies zien hoe je dat doet.
Omdat ik veel met virtuele machines werk om apps, instellingen en configuraties te testen, installeer ik het besturingssysteem constant opnieuw om een schone omgeving te garanderen. Een van de meest tijdrovende onderdelen van dit proces is het handmatig opnieuw installeren van alle essentiële applicaties die ik dagelijks gebruik.
Om dit op te lossen, wendde ik me tot Windows Package Manager (winget) , Microsofts opdrachtregelprogramma voor het beheren van apps. Het is snel en betrouwbaar, maar ik wilde iets dat nog minder handmatige handelingen vereiste. Daarom heb ik een aangepast script gemaakt dat automatisch bij het opstarten wordt uitgevoerd. Het voert twee taken uit:
- Als de app niet is geïnstalleerd, installeert het script deze.
- Als de app al is geïnstalleerd, controleert deze op updates en installeert deze zodra ze beschikbaar zijn.
In deze handleiding beschrijf ik de stappen voor het maken en gebruiken van dit script. Of u nu een ontwikkelaar, netwerkbeheerder of gevorderde gebruiker bent die tijd wil besparen, deze methode helpt u bij het stroomlijnen van app-implementaties en systeemconfiguraties op Windows 11.
Maak een Winget-script om apps te installeren en bij te werken op Windows 11.
Dit is een proces in drie stappen. Eerst moet je een lijst maken van alle apps die je op je computer wilt hebben, vervolgens moet je het script genereren en tot slot moet je bepalen hoe je het script wilt uitvoeren.
Genereer een lijst met apps
Volg deze stappen om een lijst te maken van apps die u met Winget wilt installeren en bijwerken:
-
Open Start .
-
Zoek naar 'Opdrachtprompt' (of 'Terminal'), klik met de rechtermuisknop op het bovenste resultaat en kies de optie 'Uitvoeren als beheerder' .
-
Typ de volgende opdracht om het applicatie-identificatienummer te vinden en druk op Enter :
winget zoeken APP-NAAM

Zodra je de stappen hebt voltooid, geeft de opdracht de apps weer die overeenkomen met de zoekopdracht. Meestal is het handig om één woord te gebruiken waarmee je de app kunt vinden. Als de naam een spatie bevat, gebruik dan aanhalingstekens. Anders werkt de zoekopdracht niet.
Als je een citaat gebruikt, geef je de app de opdracht om naar de exacte overeenkomst te zoeken. Zorg er dus voor dat de zoekopdracht correct is. (Dit is geen zoekmachine.)
Als ik bijvoorbeeld de winget-informatie voor de app "VLC" wil vinden, gebruik ik het commando winget search vlc.
Herhaal de stappen en noteer de ID-waarde voor elke applicatie, want je hebt deze informatie nodig om het aangepaste script te maken.
Maak het winget-script aan.
Om een batchbestand te maken voor het installeren en bijwerken van apps, volg je deze stappen:
-
Open Start .
-
Zoek naar Kladblok en klik op het bovenste resultaat om de app te openen.
-
Kopieer en plak de volgende code in het tekstbestand:
@echo off setlocal enabledelayedexpansion :: Lijst met applicatie-ID's set apps= Microsoft.WindowsTerminal.Preview Microsoft.Edge.Dev Microsoft.PowerToys for %%A in (%apps%) do ( echo --------------------------------------- echo %%A verwerken... :: Controleren of de app is geïnstalleerd door de lijstuitvoer vast te leggen winget list --id %%A > temp_check.txt 2>&1 findstr /C:"Geen geïnstalleerd pakket gevonden" temp_check.txt >nul if !errorlevel! equ 0 ( echo %%A niet geïnstalleerd. Installeren... winget install --id %%A --silent --accept-source-agreements --accept-package-agreements ) else ( echo %%A is geïnstalleerd. Upgradepoging... winget upgrade --id %%A --silent --accept-source-agreements --accept-package-agreements if !errorlevel! neq 0 ( echo Upgrade mislukt voor %%A of geen update beschikbaar. ) ) echo. ) del temp_check.txt >nul 2>&1 endlocal
-
In het gedeelte "set apps=" kunt u de applicaties opgeven die u op uw computer wilt installeren en bijwerken. Gebruik een spatie om elke applicatie te scheiden.
Korte opmerking: ik heb hier drie voorbeelden opgenomen, maar vergeet niet dit gedeelte bij te werken met uw eigen toepassingen.
-
Klik op Bestand en kies de optie Opslaan als .
-
Selecteer de locatie waar het bestand moet worden opgeslagen.
Handige tip: als je OneDrive gebruikt, kun je het bestand uploaden naar de cloud, zodat je vanaf al je computers toegang hebt tot het script.
-
Geef het script een naam en gebruik de bestandsextensie .bat .

-
Klik op de knop ' Opslaan '.
Nadat u de stappen hebt voltooid, kunt u het script handmatig uitvoeren door met de rechtermuisknop op het ".bat" -bestand te klikken en de optie "Uitvoeren als beheerder" te gebruiken , of u kunt een trigger maken om het batchbestand automatisch uit te voeren.
Hieronder volgt een gedetailleerde uitleg van het batchscript en hoe elk onderdeel werkt:
Initiële configuratie
@echo offOnderdrukt het herhalen van commando's.
setlocal enabledelayedexpansionHiermee wordt "uitgestelde variabele-expansie" mogelijk gemaakt, zodat variabelen tussen haakjes in realtime kunnen worden benaderd !VAR!in plaats van %VAR%.
Definieert de app-lijst
set apps =Definieert de lijst met Winget-app-ID's die in de lus verwerkt moeten worden.
Bekijk elke app eens.
for %%A in (%apps%) do ()Voor elke ID ( %%A) in de lijst met apps worden de ingesloten commando's achter elkaar uitgevoerd.
Controleer de app-installatie
winget listDe uitvoer wordt weggeschreven temp_check.txtomdat de opdrachtregeltool geen manier heeft om te controleren of een app al is geïnstalleerd.
findstrHet bestand wordt doorzocht op de zin "Geen geïnstalleerd pakket gevonden". Indien gevonden, wordt de waarde ERRORLEVELop 0 gezet, anders op 1 .
!errorlevel!Dit helpt om de juiste foutcode binnen de lus te krijgen.
Installeer of upgrade de app
- Als de app niet is geïnstalleerd (
errorlevel = 0), voer dan uit winget install.
- Als het geïnstalleerd is, voer het dan uit
winget upgradeen errorlevel ≠ 0meld bij een fout ( ) dat de upgrade is mislukt of dat er geen update beschikbaar was.
Opschonen en beëindigen van het script
delVerwijdert het tijdelijke bestand.
endlocalHerstelt de omgeving van vóór het script, waardoor de vertraagde uitbreiding wordt beëindigd.
Stel het script in
Je hebt drie opties om het batchscript uit te voeren. Je kunt het handmatig uitvoeren, het toevoegen aan de map 'Opstarten' zodat het systeem het automatisch uitvoert elke keer dat je je aanmeldt bij je account, of je kunt een geplande taak maken met Taakplanner.
Handmatig
Als je het script handmatig wilt uitvoeren, volg dan deze stappen:
-
Klik met de rechtermuisknop op het “.bat” -bestand en selecteer de optie 'Uitvoeren als beheerder' .

Je kunt het ook rechtstreeks uitvoeren via de opdrachtprompt of PowerShell.
Deze optie is ideaal voor testdoeleinden of incidenteel gebruik, maar vereist wel dat het apparaat elke keer handmatig wordt opgestart.
Voeg toe aan de map Opstarten
Om het script automatisch vanuit de map "Opstarten" te starten, volgt u deze stappen:
-
Open Start .
-
Zoek naar 'Run' en klik op het bovenste resultaat om de app te openen.
-
Typ de volgende opdracht om de map te openen en druk op Enter :
shell:startup

-
Kopieer en plak een snelkoppeling naar het .bat- bestand in de map.

Nadat je de stappen hebt voltooid, wordt het script elke keer uitgevoerd wanneer je inlogt.
Deze optie is eenvoudig in te stellen, maar wordt alleen uitgevoerd wanneer een gebruiker zich aanmeldt, niet bij het opstarten van het systeem. Bovendien moet u de installatie bevestigen voor elke app die beheerdersrechten vereist.
Een geplande taak maken
Volg deze stappen om een geplande taak aan te maken waarmee het winget-script wordt uitgevoerd:
-
Open Start .
-
Zoek naar Taakplanner en klik op het bovenste resultaat om de app te openen.
-
(Optioneel) Klik met de rechtermuisknop op de map "Taakplannerbibliotheek" en selecteer de optie Nieuwe map .
-
Geef de map een naam, bijvoorbeeld ' Mijn taken' .
-
Klik met de rechtermuisknop op de map 'Mijn taken' en klik op de optie 'Taak maken' .

-
Klik op het tabblad Algemeen .
-
Typ in het veld 'Naam' een beschrijvende naam voor de taak, bijvoorbeeld ' Mijn apps '.

-
Selecteer de optie 'Uitvoeren ongeacht of de gebruiker is aangemeld of niet' onder het gedeelte 'Beveiligingsopties'.
-
Schakel de optie "Uitvoeren met de hoogste bevoegdheden" in.
-
Klik op het tabblad Triggers .
-
Klik op de knop Nieuw .
-
Selecteer een trigger (zoals 'Bij aanmelden', 'Bij opstarten' of volgens een schema, bijvoorbeeld dagelijks) onder de instelling 'De taak starten'.

-
Configureer de planningsinstellingen naar wens.
Korte opmerking: Voor de eenvoud kunt u het beste de optie "Bij opstarten" kiezen .
-
Klik op de OK- knop.
-
Klik op het tabblad Acties .
-
Klik op de knop Nieuw .
-
Selecteer de optie 'Een programma starten' onder de instelling 'Acties'.
-
Typ in het veld "Programma/script" de volgende opdracht:
cmd.exe

-
Typ in het veld "Argumenten toevoegen (optioneel)" de volgende opdracht:
/c "C:\pad\naar\UW-SCRIPT.bat"
-
Klik op de OK- knop.
-
Klik op het tabblad Voorwaarden .
-
Schakel onder 'Energie' de opties 'Stoppen als de computer overschakelt op batterijvoeding' en 'De taak alleen starten als de computer is aangesloten op netstroom' uit .
-
Klik op de OK- knop.
-
Bevestig het wachtwoord voor uw account.
-
Klik op de OK- knop.
Zodra u de stappen hebt voltooid, wordt er volgens uw opgegeven schema een systeemherstelpunt aangemaakt.