我的任务是在 powershell 上安装最新的 6.x.x 版本的 dotnet-sdk。我们目前使用chocolatey来安装固定的sdk版本,但chocolatey不支持通配符。
当前代码:
choco install dotnet-sdk --version 6.0.302
我必须安装版本 6 的最新版本。
我参考了此页面https://dotnet.microsoft.com/en-us/download/dotnet/6.0但无法将安装转换为脚本。
如果你真的想使用 Chocolatey,请安装没有版本的 dotnet-6.0-sdk 包:
choco install dotnet-6.0-sdk
正如文档所解释的:
这是一个元包,它在所有功能更新中安装最新版本的 .NET 6.0 SDK。
.NET SDK 不是通过 Chocolatey 部署的。您会发现有一个meta包,可以下载并安装实际的安装包。这些软件包的维护者确保既有整体软件包,
dotnet-sdk
,也有特定于主要版本的软件包,如dotnet-6.0-sdk
。每次发布新的 SDK 时,维护人员都会更新软件包。
另一个选择是下载并使用官方 .NET 安装脚本。 .NET SDK 下载页面中始终有一个链接,链接到 脚本下载页面 和 文档 如果您不需要Chocolatey,您可以使用 .NET 下载页面中的 Powershell .NET 安装脚本。
只是为了提供使用 Chocolatey 进行安装的替代方案。
winget.exe
、Windows 包管理器 CLI 安装 .NET SDK:
# Installs the latest .NET 6 SDK.
# Run From an ELEVATED session.
winget install Microsoft.DotNet.SDK.6 -h
-h
(--silent
) 选项隐藏安装程序的 GUI。
Run As Administrator
启动的会话),您仍然会得到 one GUI 元素,即用于按需提升的 UAC 对话框。与 -h
结合使用时,此对话框不会弹出;您需要通过任务栏手动激活它才能做出响应。要同时隐藏
winget
自己的控制台输出,请附加 *>$null
上述内容对于其他主要 .NET SDK 版本的工作方式类似,例如
Microsoft.DotNet.SDK.8
;要找到全部,请运行:
winget search Microsoft.DotNet.SDK.
稍后remove(卸载)以这种方式安装的 SDK,请使用,例如:
# Uninstall.
# Run From an ELEVATED session.
winget uninstall Microsoft.DotNet.SDK.6 -h