Windows 使用 winget 安装与升级 PowerShell
参考:Microsoft 官方文档(PowerShell 安装指南)
WinGet 是 Windows 客户端官方推荐方式 (Microsoft Learn)
一、为什么用 winget?
简单说一句:最省事 + 最接近“自动化部署”
优点:
官方推荐方式(Windows 客户端) (Microsoft Learn)
一条命令安装
支持升级 / 卸载
适合脚本化(DevOps / 自动化环境)
二、前提条件
确认 winget 可用
winget --version如果有版本号 → OK
如果没有:
安装 Microsoft Store 的 App Installer
建议使用管理员权限
避免权限问题(尤其是写入 Program Files)
三、安装 PowerShell(核心步骤)
1. 搜索可安装版本
winget search --id Microsoft.PowerShell你会看到类似:
Name Id Version
--------------------------------------------
PowerShell Microsoft.PowerShell 7.x.x
2. 安装 PowerShell
winget install --id Microsoft.PowerShell --source winget这是官方推荐命令 (Microsoft Learn)
安装后发生了什么?
安装路径:
C:\Program Files\PowerShell\7自动加入 PATH
新命令:
pwsh
3. 验证安装
pwsh然后:
$PSVersionTable
四、升级 PowerShell
1. 查看是否有更新
winget list --id Microsoft.PowerShell --upgrade-available会显示是否有新版本 (Microsoft Learn)
2. 执行升级
winget upgrade --id Microsoft.PowerShellPS C:\Users\hz > winget list --id Microsoft.PowerShell --upgrade-available
名称 ID 版本 可用 源
------------------------------------------------------------
PowerShell 7-x64 Microsoft.PowerShell 7.6.0.0 7.6.1.0 winget
1 升级可用。
PS C:\Users\hz > winget upgrade --id Microsoft.PowerShell
已找到 PowerShell [Microsoft.PowerShell] 版本 7.6.1.0
此应用程序由其所有者授权给你。
Microsoft 对第三方程序包概不负责,也不向第三方程序包授予任何许可证。
正在下载 https://github.com/PowerShell/PowerShell/releases/download/v7.6.1/PowerShell-7.6.1-win-x64.msi
██████████████████████████████ 109 MB / 109 MB
已成功验证安装程序哈希
正在启动程序包安装...
安装程序将请求以管理员身份运行。期待提示。
\
PS C:\Users\hz > $PSHOME
D:\Program Files\PowerShell\7官方推荐升级方式 (Microsoft Learn)
五、常见“坑”和解决方案(重点)
1. 升级失败 / 找不到包
可能原因:
安装方式不同(例如 MSI vs winget)
版本来源不一致
官方说明:
升级必须使用相同安装方式 (Microsoft Learn)
解决方案(强制重装)
winget install --id Microsoft.PowerShell --source winget --force --uninstall-previous一步完成:
卸载旧版本
安装新版本
2. 为什么没有“覆盖升级”?
因为:
PowerShell 7 是独立版本(不会替换 5.1)
也就是说:
Windows PowerShell 5.1(系统自带)
PowerShell 7(你安装的)
是并存关系
六、卸载 PowerShell
如果需要:
winget uninstall --id Microsoft.PowerShell七、额外技巧(实用)
1. 安装预览版(体验新特性)
winget install --id Microsoft.PowerShell.Preview2. 一步安装指定版本
winget install --id Microsoft.PowerShell --version 7.x.x3. 判断当前安装来源
$PSHOME不同路径代表:
官方推荐用这个判断来源 (Microsoft Learn)
八、总结
安装
winget install --id Microsoft.PowerShell --source winget升级
winget upgrade --id Microsoft.PowerShell强制升级(推荐记住)
winget install --id Microsoft.PowerShell --force --uninstall-previous
本文链接:
/archives/1777433542671
版权声明:
本站所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自
微博客!
喜欢就支持一下吧