- За да създадете winget скрипт за инсталиране и актуализиране на приложения в Windows 11, използвайте пакетен файл със списък с идентификатори на приложения.
- Скриптът проверява дали всяко приложение е инсталирано. Ако не е, го инсталира, а ако е, проверява за актуализации и ги инсталира.
- Можете да стартирате скрипта ръчно, от папката „Стартиране“ или като планирана задача.
В Windows 11 можете да създадете прост скрипт за автоматично изтегляне, инсталиране и актуализиране на любимите ви приложения всеки път, когато системата се стартира, а в това ръководство ще ви покажа точно как да го направите.
Като човек, който работи интензивно с виртуални машини за тестване на приложения, настройки и конфигурации, аз постоянно преинсталирам операционната система, за да осигуря чиста среда. Една от най-отнемащите време части от процеса е ръчното преинсталиране на всички основни приложения, на които разчитам всеки ден.
За да реша това, се обърнах към Windows Package Manager (winget) , инструментът на Microsoft за управление на приложения от командния ред. Той е бърз и надежден, но исках нещо още по-неангажиращо. Затова създадох персонализиран скрипт, който се стартира автоматично при стартиране. Той изпълнява две задачи:
- Ако приложението не е инсталирано, скриптът го инсталира.
- Ако приложението вече е инсталирано, то проверява за актуализации и ги инсталира, когато са налични.
В това ръководство ще опиша стъпките за създаване и използване на този скрипт. Независимо дали сте разработчик, мрежов администратор или опитен потребител, който иска да спести време, този метод ще ви помогне да рационализирате внедряването на приложения и настройката на системата в Windows 11.
Създайте winget скрипт за инсталиране и актуализиране на приложения в Windows 11
Това е процес от три стъпки. Първо, трябва да създадете списък с всички приложения, които искате на компютъра си, след това да генерирате скрипта и да решите как да го изпълните.
Генериране на списък с приложения
За да създадете списък с приложения за инсталиране и актуализиране с помощта на winget, изпълнете следните стъпки:
-
Отворете „Старт“ .
-
Потърсете „Команден ред“ (или „Терминал“), щракнете с десния бутон върху горния резултат и изберете опцията „ Изпълни като администратор“ .
-
Въведете следната команда, за да намерите идентификационния номер на приложението, и натиснете Enter :
търсене на крила APPNAME

След като изпълните стъпките, командата ще изведе приложенията, които отговарят на заявката. Обикновено е добре да използвате една дума, която да ви помогне да намерите приложението. Ако името съдържа интервал, използвайте „кавички“. В противен случай търсенето няма да работи.
Също така, ако използвате цитат, ще кажете на приложението да търси точното съвпадение, така че се уверете, че заявката е правилна. (Това не е търсачка.)
Например, ако искам да намеря информацията за winget за приложението „VLC“, използвам командата winget search vlc.
Повторете стъпките и запишете стойността на идентификатора за всяко приложение, тъй като ще ви е необходима тази информация, за да създадете персонализиран скрипт.
Създайте скрипта за крило
За да създадете пакетен файл за инсталиране и актуализиране на приложения, изпълнете следните стъпки:
-
Отворете „Старт“ .
-
Потърсете Notepad и щракнете върху най-горния резултат, за да отворите приложението.
-
Копирайте и поставете следния код в текстовия файл:
@echo off setlocal enabledelayedexpansion :: Списък с идентификатори на приложения set apps= Microsoft.WindowsTerminal.Preview Microsoft.Edge.Dev Microsoft.PowerToys for %%A in (%apps%) do ( echo ---------------------------------------- echo Обработване на %%A... :: Проверка дали приложението е инсталирано чрез заснемане на изхода на списъка winget list --id %%A > temp_check.txt 2>&1 findstr /C:"Няма намерен инсталиран пакет" temp_check.txt >nul if !errorlevel! equ 0 ( echo %%A не е инсталиран. Инсталиране... winget install --id %%A --silent --accept-source-agreements --accept-package-agreements ) else ( echo %%A е инсталиран. Опит за надстройка... winget upgrade --id %%A --silent --accept-source-agreements --accept-package-agreements if !errorlevel! neq 0 ( echo Надстройката е неуспешна за %%A или няма налична актуализация. ) ) echo. ) del temp_check.txt >nul 2>&1 крайно локално
-
В секцията „set apps=" посочете приложенията, които искате да инсталирате и актуализирате на компютъра си, и използвайте интервал, за да разделите всяко приложение.
Бърза бележка: В този ред включвам три примера, но не забравяйте да актуализирате този раздел, за да включите и вашите приложения.
-
Кликнете върху Файл и изберете опцията Запиши като .
-
Изберете мястото за съхранение на файла.
Бърз съвет: Ако използвате OneDrive, можете да качите файла в облака, за да имате достъп до скрипта от всичките си компютри.
-
Потвърдете име за скрипта и използвайте файловото разширение .bat .

-
Щракнете върху бутона Запазване .
След като изпълните стъпките, можете да стартирате скрипта ръчно, като щракнете с десния бутон върху файла „.bat“ и използвате опцията „Изпълни като администратор“ , или можете да създадете спусък за автоматично стартиране на пакетния файл.
Ето подробно описание на пакетния скрипт и как работи всяка част:
Първоначална настройка
@echo offпотиска ехото на командите.
setlocal enabledelayedexpansionактивира „забавено разширяване на променливи“, така че променливите в скоби могат да бъдат достъпвани в реално време, използвайки !VAR!вместо %VAR%.
Определя списъка с приложения
set apps =определя списъка с идентификатори на winget приложения, които да се обработват в цикъла.
Разгледайте всяко приложение
for %%A in (%apps%) do ()За всеки идентификатор ( %%A) в списъка с приложения, приложените команди се изпълняват последователно.
Проверете инсталирането на приложението
winget listзаписва изхода в, temp_check.txtзащото инструментът за команди няма начин да провери дали дадено приложение вече е инсталирано.
findstrтърси в този файл фразата „Не е намерен инсталиран пакет“. Задава ERRORLEVELстойност 0 , ако е намерен, в противен случай 1 .
!errorlevel!помага да се получи правилният код за грешка в цикъла.
Инсталиране или надграждане на приложение
- Ако приложението не е инсталирано (
errorlevel = 0), стартирайте winget install.
- Ако е инсталиран, стартирайте
winget upgradeи при неуспех ( errorlevel ≠ 0) докладвайте, че надстройката е неуспешна или че няма налична актуализация.
Почистване и прекратяване на скрипта
delпремахва временния файл.
endlocalвъзстановява средата на предварителния скрипт, прекратявайки забавеното разширяване.
Настройте скрипта
Имате три опции за изпълнение на пакетния скрипт. Можете да го стартирате ръчно, да го добавите към папката „Стартиране“, за да позволите на системата да го изпълнява автоматично всеки път, когато влезете в акаунта си, или можете да създадете планирана задача с Планировчика на задачи.
Ръчно
Ако искате да стартирате скрипта ръчно, следвайте тези стъпки:
-
Щракнете с десния бутон върху файла „.bat“ и изберете опцията „Изпълни като администратор“ .

Можете също да го стартирате директно чрез командния ред или PowerShell.
Тази опция е идеална за тестване или случайна употреба, но изисква ръчно стартиране всеки път.
Добавяне към папката „Стартиране“
За да стартирате скрипта автоматично от папката „Стартиране“, изпълнете следните стъпки:
-
Отворете „Старт“ .
-
Потърсете „Run“ и щракнете върху най-горния резултат, за да отворите приложението.
-
Въведете следната команда, за да отворите папката, и натиснете Enter :
shell:startup

-
Копирайте и поставете пряк път за .bat файла в папката.

След като изпълните стъпките, скриптът ще се изпълнява всеки път, когато влезете.
Тази опция е лесна за настройване, но се изпълнява само когато потребител влезе, а не при стартиране на системата. Освен това ще трябва да потвърдите инсталирането за всяко приложение, което изисква повишаване на правата.
Създаване на планирана задача
За да създадете планирана задача за изпълнение на скрипта winget, изпълнете следните стъпки:
-
Отворете „Старт“ .
-
Потърсете „Планировчик на задачи“ и щракнете върху горния резултат, за да отворите приложението.
-
(По избор) Щракнете с десния бутон върху папката „Библиотека на планировчика на задачи“ и изберете опцията „ Нова папка“ .
-
Потвърдете име за папката – например Моите задачи .
-
Щракнете с десния бутон върху папката „Моите задачи“ и щракнете върху опцията „Създаване на задача “ .

-
Кликнете върху раздела Общи .
-
В полето „Име“ въведете описателно име за задачата, например „ Моите приложения “.

-
Изберете опцията „Изпълнявай, независимо дали потребителят е влязъл или не“ в секцията „Опции за сигурност“.
-
Отметнете опцията „Изпълнявай с най-високи привилегии“ .
-
Кликнете върху раздела Тригери .
-
Щракнете върху бутона Ново .
-
Изберете спусък (като например „При влизане в системата“, „При стартиране“ или по график, например ежедневно) под настройката „Започване на задачата“.

-
Конфигурирайте настройките на графика, ако е необходимо.
Бърза бележка: За по-лесно, може да искате да изберете опцията „При стартиране“ .
-
Щракнете върху бутона OK .
-
Кликнете върху раздела „ Действия“ .
-
Щракнете върху бутона Ново .
-
Изберете опцията „ Стартиране на програма“ под настройката „Действия“.
-
В настройката „Програма/скрипт“ въведете следната команда:
cmd.exe

-
В настройката „Добавяне на аргументи (по избор)“ въведете следната команда:
/c "C:\път\до\ВАШИЯ-СКРИПТ.bat"
-
Щракнете върху бутона OK .
-
Щракнете върху раздела Условия .
-
Под „Захранване“ изчистете отметките от опциите „Спиране, ако компютърът превключи на захранване от батерията“ и „Стартиране на задачата само ако компютърът е на променливотоково захранване“ .
-
Щракнете върху бутона OK .
-
Потвърдете паролата за вашия акаунт.
-
Щракнете върху бутона OK .
След като изпълните стъпките, ще бъде създадена точка за възстановяване на системата по зададен от вас график.