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 enabledelayedexpansion :: 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.右键单击 "我的任务" 文件夹,然后点击创建任务选项。
6.点击 "常规" 选项卡。
7.在 "名称" 字段中,为任务输入一个描述性名称,例如 "我的应用"。
8.在 "安全选项" 部分选择 "无论用户是否登录都运行" 选项。
9.勾选 "以最高权限运行" 选项。
10.点击触发选项卡
11.点击新建按钮。
12.在 "开始任务" 设置下选择一个触发器(例如 "登录时"、"启动时" 或按日程安排如每天)
13.根据需要配置日程设置。
14.点击确定按钮。
15.点击 "操作" 选项卡。
16.点击 "新建" 按钮。
17.在 "操作" 设置下选择 "启动程序" 选项。
18.在 "程序 / 脚本" 设置中,输入“cmd.exe”命令:
19.在 "添加参数(可选)" 设置中,输入以下命令:/c "C:\path\to\YOUR-SCRIPT.bat(这里修改为 bat 文件路径)"
以上图源均来自 pureinfotech
20.点击确认按钮。
21.点击 "条件" 选项卡。
22.在 "电源" 下,取消勾选 "如果计算机切换到电池电源则停止" 和 "仅在计算机使用交流电源时启动任务" 选项。
23.点击确定按钮。
24.确认账户的密码。
25.点击确定按钮。
相关文章
微软淘汰控制面板进度+1! Win11时间服务器配置迁移至设置应用
微软淘汰控制面板有了新进度,在Win11系统中,配置时间服务器地址选项迁移到设置应用中,详细请看下文介绍2025-05-30Win11 2项语言选项迁移至设置应用:微软加速淘汰控制面板
Win11 Dev 和 Beta预览版中,将“非 Unicode 程序的语言设置”和“将当前用户设置复制到欢迎界面及系统账户 / 新用户账户”两个选项迁移到设置应用,控制面板即将淘汰2025-05-19方便电脑数据转移! 微软推出Windows备份应用备份迁移工具
今年早些时候,这款迁移应用的部分细节曾在Windows的一个内部预览版本中被发现,随着最新版本在Dev频道和Beta频道的发布,有关这款迁移工具的新信息逐渐清晰,目前它已被整2025-05-14- 近期,关于微软Windows 11系统的一项重大调整引发了广泛关注,微软计划对其系统设置中的“开发者专用”页面进行更名与升级,新的名称将是“高级”页面2025-05-06
- 我们都安装了打算使用的应用程序,但后来却忘记了它们的存在,然而,尽管你不再使用它们,这些应用程序仍然占用存储空间并使用我们的互联网带宽,为了防止这种情况发生,微2025-04-24
如何提升系统安全性? Win11智能应用控制工作原理和开启教程
智能应用控制是win11中非常有用的工具,可帮助保护你的电脑免受可能损害数据的未经授权的应用(如勒索软件或间谍软件)的侵害,本文将解释什么是智能应用控制、它是如何工2025-04-24- Win11 是一个很棒的新版本,具有许多高级功能和改进,但是,由于这些功能需要高性能,它会导致更快的电池消耗,有些Win11用户抱怨耗电快,下面教你几招揪出“电老虎”2025-04-21
推荐卸载/升级应用:微软缓解Win11 24H2与壁纸应用兼容问题
微软在4月11日对Windows健康控制台进行了更新,宣布已“缓解”部分壁纸自定义应用程序与Win11 24H2版本的兼容性问题,并逐步解除与此相关的升级限制2025-04-16可在一页显示固定图标和所有应用! Win11开始菜单重大更新曝光
微软发布了面向 Windows 11 Dev 和 Beta 预览版用户更新,终于放弃了双栏开始菜单设计,改为单栏可滚动视图2025-04-07- W系统有可能会遇到应用程序模糊、字体不清晰、图片显示模糊,甚至软件界面错位等问题,本文将探讨Win11显示模糊的原因,并提供相应的解决方案2025-04-02
最新评论