- För att skapa ett winget-skript för att installera och uppdatera appar i Windows 11, använd en batchfil med en lista över app-ID:n.
- Skriptet kontrollerar om varje app är installerad. Om inte, installerar den den, och om den är det, söker den efter uppdateringar och installerar dem.
- Du kan köra skriptet manuellt, från startmappen eller som en schemalagd uppgift.
I Windows 11 kan du skapa ett enkelt skript för att automatiskt ladda ner, installera och uppdatera dina favoritappar varje gång systemet startar, och i den här guiden visar jag dig exakt hur du gör det.
Som någon som arbetar mycket med virtuella maskiner för att testa appar, inställningar och konfigurationer, installerar jag ständigt om operativsystemet för att säkerställa en ren miljö. En av de mest tidskrävande delarna av processen är att manuellt installera om alla viktiga applikationer jag förlitar mig på varje dag.
För att lösa detta vände jag mig till Windows Package Manager (winget) , Microsofts kommandoradsverktyg för att hantera appar. Det är snabbt och pålitligt, men jag ville ha något ännu mer praktiskt. Så jag byggde ett anpassat skript som körs automatiskt vid start. Det utför två uppgifter:
- Om appen inte är installerad installerar skriptet den.
- Om appen redan är installerad söker den efter uppdateringar och installerar dem när de är tillgängliga.
I den här guiden beskriver jag stegen för att skapa och använda det här skriptet. Oavsett om du är en utvecklare, nätverksadministratör eller en avancerad användare som vill spara tid, kommer den här metoden att hjälpa dig att effektivisera appdistribution och systeminstallation i Windows 11.
Skapa ett winget-skript för att installera och uppdatera appar i Windows 11
Detta är en process i tre steg. Först måste du skapa en lista över alla appar du vill ha på din dator, sedan måste du generera skriptet och du måste bestämma hur du ska köra skriptet.
Generera en lista med appar
Så här skapar du en lista över appar som ska installeras och uppdateras med winget:
-
Öppna Start .
-
Sök efter Kommandotolken (eller Terminal), högerklicka på det översta resultatet och välj alternativet Kör som administratör .
-
Skriv följande kommando för att hitta programmets identifikationsnummer och tryck på Enter :
winget-sökning APP-NAMN

När du har slutfört stegen kommer kommandot att visa de appar som matchar sökfrågan. Vanligtvis vill du använda ett enda ord som hjälper dig att hitta appen. Om namnet har ett mellanslag, använd "citattecken". Annars fungerar inte sökningen.
Om du använder ett citat kommer du också att be appen att leta efter den exakta matchningen, så se till att sökfrågan är korrekt. (Detta är inte en sökmotor.)
Om jag till exempel vill hitta winget-informationen för "VLC"-appen använder jag winget search vlc-kommandot.
Upprepa stegen och anteckna ID-värdet för varje applikation, eftersom du behöver den här informationen för att skapa det anpassade skriptet.
Skapa winget-skriptet
Så här skapar du en batchfil för att installera och uppdatera appar:
-
Öppna Start .
-
Sök efter Anteckningar och klicka på det översta resultatet för att öppna appen.
-
Kopiera och klistra in följande kod i textfilen:
@echo off setlocal enabledelayedexpansion :: Lista över program-ID: n set apps= Microsoft.WindowsTerminal.Preview Microsoft.Edge.Dev Microsoft.PowerToys för %%A i (%apps%) do ( echo ---------------------------------------- echo Bearbetar %%A... :: Kontrollera om appen är installerad genom att hämta listan som visas winget list --id %%A > temp_check.txt 2>&1 findstr /C:"Inget installerat paket hittades" temp_check.txt >nul if !errorlevel!equ 0 ( echo %%A inte installerat. Installerar... winget install --id %%A --silent --accept-source-agreements --accept-package-agreements ) else ( echo %%A är installerat. Försöker uppgradera... winget upgrade --id %%A --silent --accept-source-agreements --accept-package-agreements if !errorlevel!neq 0 ( echo Uppgraderingen misslyckades för %%A eller så finns ingen uppdatering tillgänglig. ) ) echo. ) del temp_check.txt >null 2>&1 slutlokal
-
I avsnittet "set apps=" anger du de program du vill installera och uppdatera på din dator och använder ett mellanslag för att separera varje program.
Snabb anmärkning: Jag inkluderar tre exempel i den här raden, men kom ihåg att uppdatera det här avsnittet för att inkludera dina applikationer.
-
Klicka på Arkiv och välj alternativet Spara som .
-
Välj platsen för att lagra filen.
Snabbtips: Om du använder OneDrive kan du ladda upp filen till molnet så att du har tillgång till skriptet från alla dina datorer.
-
Bekräfta ett namn för skriptet och använd filändelsen .bat .

-
Klicka på knappen Spara .
När du har slutfört stegen kan du köra skriptet manuellt genom att högerklicka på ".bat" -filen och använda alternativet "Kör som administratör" , eller så kan du skapa en utlösare för att köra batchfilen automatiskt.
Här är en detaljerad genomgång av batchskriptet och hur varje del fungerar:
Initial installation
@echo offundertrycker kommandoeko.
setlocal enabledelayedexpansionmöjliggör "fördröjd variabelexpansion" så att variabler inom parenteser kan nås i realtid med hjälp av !VAR!istället för %VAR%.
Definierar applistan
set apps =definierar listan över winget-app-ID:n som ska bearbetas i loopen.
Titta igenom varje app
for %%A in (%apps%) do ()För varje ID ( %%A) i applistan körs de bifogade kommandona sekventiellt.
Kontrollera appinstallationen
winget listskriver utdata till temp_check.txteftersom kommandoverktyget inte har något sätt att kontrollera om en app redan är installerad.
findstrsöker i den filen efter frasen "Inget installerat paket hittades." Den sätts ERRORLEVELtill 0 om den hittas, annars 1 .
!errorlevel!hjälper till att få rätt felkod inuti loopen.
Installera eller uppgradera appen
- Om appen inte är installerad (
errorlevel = 0), kör winget install.
- Om den är installerad, kör
winget upgrade, och vid fel ( errorlevel ≠ 0) rapportera att uppgraderingen misslyckades eller att ingen uppdatering fanns tillgänglig.
Rensa och avsluta skriptet
deltar bort den temporära filen.
endlocalåterställer miljön före skriptet och avslutar fördröjd expansion.
Ställ in skriptet
Du har tre alternativ för att köra batchskriptet. Du kan köra det manuellt, lägga till det i mappen "Start" för att låta systemet köra det automatiskt varje gång du loggar in på ditt konto, eller så kan du skapa en schemalagd uppgift med Aktivitetsschemaläggaren.
Manuellt
Om du vill köra skriptet manuellt, följ dessa steg:
-
Högerklicka på filen ".bat" och välj alternativet Kör som administratör .

Du kan också köra den direkt via kommandotolken eller PowerShell.
Det här alternativet är idealiskt för testning eller tillfällig användning, men det kräver manuell initiering varje gång.
Lägg till i startmappen
För att starta skriptet automatiskt från mappen "Start", följ dessa steg:
-
Öppna Start .
-
Sök efter Kör och klicka på det översta resultatet för att öppna appen.
-
Skriv följande kommando för att öppna mappen och tryck på Enter :
skal:start

-
Kopiera och klistra in en genväg för .bat- filen i mappen.

När du har slutfört stegen körs skriptet varje gång du loggar in.
Det här alternativet är enkelt att konfigurera, men körs bara när en användare loggar in, inte vid systemstart. Du måste också bekräfta installationen för varje app som kräver höjning.
Skapa en schemalagd uppgift
För att skapa en schemalagd uppgift för att köra winget-skriptet, följ dessa steg:
-
Öppna Start .
-
Sök efter Schemaläggaren och klicka på det översta resultatet för att öppna appen.
-
(Valfritt) Högerklicka på mappen ”Schemaläggarbibliotek” och välj alternativet Ny mapp .
-
Bekräfta ett namn för mappen – till exempel Mina uppgifter .
-
Högerklicka på mappen "Mina uppgifter" och klicka på alternativet Skapa uppgift .

-
Klicka på fliken Allmänt .
-
I fältet ”Namn” skriver du ett beskrivande namn för uppgiften, till exempel ” Mina appar ”.

-
Välj alternativet "Kör oavsett om användaren är inloggad eller inte" under avsnittet "Säkerhetsalternativ".
-
Markera alternativet "Kör med högsta behörighet" .
-
Klicka på fliken Utlösare .
-
Klicka på knappen Ny .
-
Välj en utlösare (till exempel "Vid inloggning", "Vid start" eller enligt ett schema som dagligen) under inställningen "Starta uppgiften".

-
Konfigurera schemainställningarna efter behov.
Snabb anmärkning: För enkelhetens skull kanske du vill välja alternativet "Vid start" .
-
Klicka på OK- knappen.
-
Klicka på fliken Åtgärder .
-
Klicka på knappen Ny .
-
Välj alternativet Starta ett program under inställningen "Åtgärder".
-
I inställningen "Program/skript" skriver du följande kommando:
cmd.exe

-
I inställningen "Lägg till argument (valfritt)" skriver du följande kommando:
/c "C:\sökväg\till\DITT-SKRIPT.bat"
-
Klicka på OK- knappen.
-
Klicka på fliken Villkor .
-
Under "Ström" avmarkerar du alternativen "Stoppa om datorn växlar till batteridrift" och "Starta uppgiften endast om datorn är på nätström" .
-
Klicka på OK- knappen.
-
Bekräfta lösenordet för ditt konto.
-
Klicka på OK- knappen.
När du har slutfört stegen skapas en systemåterställningspunkt enligt ditt angivna schema.