Win11如何用winget脚本自动安装和更新应用?
科技媒体 pureinfotech 昨日(6 月 9 日)发布博文,详细介绍了在 Windows 11 系统中,如何通过 winget 脚本,实现自动安装和更新应用。
一、实现的效果
通过 winget 脚本可以自动实现以下效果,可以设置为开机启动项,执行以下两项任务:
- 如果应用未安装,通过脚本自动安装。
- 如果应用已安装,脚本会检查是否有更新,并在检测到有更新后自动安装。
该媒体编辑 Mauro Huculak 是一位拥有 21 年丰富经验的专业记者,在该网站撰写多年 Windows 相关教程内容。
他经常使用虚拟机测试应用,因此经常需要重新安装操作系统以确保环境干净,过程中最耗时的部分,就是手动重新安装我每天依赖的所有必须应用,而通过 winget 脚本,可以解决他的这个问题。
整个过程可以划分为三步,用户首先创建一份包含您希望安装在电脑上的所有应用的列表,然后生成脚本,最后决定如何运行脚本。
二、生成应用列表
要创建一个使用 winget 安装和更新的应用列表,附上操作步骤如下:
1. 打开开始菜单
2. 搜索命令提示符(或终端),右键点击顶部结果,并选择以管理员身份运行选项。
3. 输入以下命令以查找应用程序标识号,然后按回车键:
winget search -NAME
完成这些步骤后,命令将输出符合查询条件的应用程序。通常情况下,用户会希望使用一个单一的词来帮助您找到该应用程序。如果名称中包含空格,请使用 "引号"。
例如,如果用户想查找“VLC”应用程序的 winget 信息,可以使用 winget search vlc 命令,重复这些步骤并记录每个应用程序的 ID 值。
三、创建 winget 脚本
要创建一个用于安装和更新应用程序的批处理文件,请按照以下步骤操作:
1.打开开始菜单。
2.搜索记事本并点击顶部结果以打开应用程序。
3.将以下代码复制并编程客栈粘贴到文本文件中:
@echo off setlocal enabledelayejsdexpansion :: List of application IDs set apps=Microsoft.WindowsTerminal.Preview Microsoft.Edge.Dev Microsoft.PowerToys for %%A in (%apps%) do ( echo --------------------------------------- echo Processing %%A... :: Check if the app is installed by capturing the list output winget list --id %%A > temp_check.txt 2>&1 findstr /C:"No installed package found" temp_check.txt >nul if !errorlevel! equ 0 ( echo %%A not installed. Installing... winget install --id %%A --silent --accept-source-agreements --accept-package-agreements ) else ( echo %%A is installed. Attempting upgrade... winget upgrade --id %%A --silent --accept-source-agreements --accept-package-agreements if !errorlevel! neq 0 ( echo Upgrade failed for %%A or no update available. ) ) echo. ) del temp_check.txt >nul 2>&1 endlocal
4.在“set apps=”部分,注释您希望在计算机上安装和更新的应用程序,并使用空格分隔每个应用程序。
5.点击文件并选择另存为选项。
6.选择存储文件的位置。
7.为脚本确认一个名称,并使用 .BAT 文件扩展名。
8.点击保存。
四、设置 winget 脚本
这里有 3 种 winget 运行方面,第一种就是每次都手动点击运行,第二种就是当作开机项使用,第三种就是创建定时任务。
4.1、手动运行
1.右键点击 ".bat" 文件并选择以管理员身份运行选项。用户也可以直接通过命令提示符或 PowerShell 运行它。
4.2、添加到开机启动文件夹
1.打开开始菜单。
2.搜索“Run”并点击顶部结果以打开应用程序。
3.输入“shell:startup”命令以打开文件夹,然后按回车键:
4.将 .bat 文件的快捷方式复制并粘贴到文件夹中。
4.3、创建定时任务
1. 打开开始菜单。
2.搜索任务计划程序,并点击顶部结果以打开应用程序。
3.(可选) 右键单击 "任务计划程序库" 文件夹,并选择 "新建文件夹" 选项。
4.为文件夹确认一个名称 —— 例如,我的任务。
5.右键单击 &quoekHxet;我的任务" 文件夹,然后点击创建任务选项。
6.点击 "常规" 选项卡。
7.在 "名称" 字段中,为任务输入一个描述性名称,例如 "我的应用"。
8.在 "安全选项" 部分选择 "无论用户是否登录都运行" 选项。
9.勾选 "以最高权限运行" 选项。
10.点击触发选项卡
11.点击新建按钮。
12.在 "开始任务" 设置下选择一个触发器(例如 "登录时"、"启动时" 或按日程安排如每天)
13.根据需要配置日程设置。
14.点击确定按钮。
15.点击 "操作" 选项卡。
16.点击 "新建" 按钮。
17.在 "操作" 设置下选择 "启js动程序" 选项。
18.在 "程序 / 脚本" 设置中,输入“cmd.exe”命令www.devze.com:
19.在 "添加参数(可选)" 设置中,输入以下命令:/c "C:\path\to\YOUR-SCRIPT.bat(这里修改为 bat 文件路径)"
以上图源均来自 pureinfotech
20.点击确认按钮。
21.点击 "条件" 选项卡。
22.在 "电源" 下,取消勾选 "如果计算机切换到电池电源则停止" 和 "仅在计算机使用交流电源时启动任务" 选项。
23.点击确定按钮。
24.确认账户的密码。
25.点击确定按钮。
精彩评论