前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >dotnet-install 脚本参考

dotnet-install 脚本参考

作者头像
呆呆
发布2022-01-05 09:37:58
1.6K0
发布2022-01-05 09:37:58
举报
文章被收录于专栏:centosDai
代码语言:javascript
复制
名称
dotnet-install.ps1| dotnet-install.sh- 用于安装 .NET SDK 和共享运行时的脚本。

概要
视窗:

电源外壳

复制
dotnet-install.ps1 [-Architecture <ARCHITECTURE>] [-AzureFeed]
    [-Channel <CHANNEL>] [-DryRun] [-FeedCredential]
    [-InstallDir <DIRECTORY>] [-JSonFile <JSONFILE>]
    [-NoCdn] [-NoPath] [-ProxyAddress] [-ProxyBypassList <LIST_OF_URLS>]
    [-ProxyUseDefaultCredentials] [-Quality <QUALITY>] [-Runtime <RUNTIME>]
    [-SkipNonVersionedFiles] [-UncachedFeed] [-Verbose]
    [-Version <VERSION>]

Get-Help ./dotnet-install.ps1
Linux/macOS:

重击

复制
dotnet-install.sh  [--architecture <ARCHITECTURE>] [--azure-feed]
    [--channel <CHANNEL>] [--dry-run] [--feed-credential]
    [--install-dir <DIRECTORY>] [--jsonfile <JSONFILE>]
    [--no-cdn] [--no-path] [--quality <QUALITY>]
    [--runtime <RUNTIME>] [--runtime-id <RID>]
    [--skip-non-versioned-files] [--uncached-feed] [--verbose]
    [--version <VERSION>]

dotnet-install.sh --help
bash 脚本还读取 PowerShell 开关,因此您可以在 Linux/macOS 系统上将 PowerShell 开关与脚本一起使用。

描述
这些dotnet-install脚本执行 .NET SDK 的非管理员安装,其中包括 .NET CLI 和共享运行时。有两个脚本:

适用于 Windows 的 PowerShell 脚本。
适用于 Linux/macOS 的 bash 脚本。
 笔记

.NET 收集遥测数据。要了解更多信息以及如何选择退出,请参阅.NET SDK 遥测。

目的
脚本的预期用途是持续集成 (CI) 场景,其中:

SDK 需要在没有用户交互和管理员权限的情况下安装。

SDK 安装不需要在多个 CI 运行中持续存在。

典型的事件序列:

CI 被触发。
CI 使用这些脚本之一安装 SDK。
CI 完成其工作并清除包括 SDK 安装在内的临时数据。
要设置开发环境或运行应用程序,请使用安装程序而不是这些脚本。

推荐版本
我们建议您使用脚本的稳定版本:

Bash (Linux/macOS):https : //dot.net/v1/dotnet-install.sh
PowerShell (Windows):https : //dot.net/v1/dotnet-install.ps1
脚本行为
两个脚本具有相同的行为。他们从 CLI 构建包下载 ZIP/tarball 文件,然后继续将其安装在默认位置或由-InstallDir|--install-dir.

默认情况下,安装脚本会下载 SDK 并进行安装。如果您只想获取共享运行时,请指定-Runtime|--runtime参数。

默认情况下,脚本会将安装位置添加到当前会话的 $PATH 中。通过指定-NoPath|--no-path参数覆盖此默认行为。该脚本不设置DOTNET_ROOT环境变量。

在运行脚本之前,安装所需的依赖项。

您可以使用-Version|--version参数安装特定版本。版本必须指定为由三部分组成的版本号,例如2.1.0. 如果未指定版本,脚本将安装该latest版本。

安装脚本不会更新 Windows 上的注册表。他们只是下载压缩的二进制文件并将它们复制到一个文件夹中。如果您希望更新注册表项值,请使用 .NET 安装程序。

选项
-Architecture|--architecture <ARCHITECTURE>

要安装的 .NET 二进制文件的体系结构。可能的值是<auto>,amd64,x64,x86,arm64,和arm。默认值为<auto>,代表当前运行的操作系统架构。

-AzureFeed|--azure-feed

指定安装程序的 Azure 源的 URL。我们建议您不要更改此值。默认值为https://dotnetcli.azureedge.net/dotnet。

-Channel|--channel <CHANNEL>

指定安装的源通道。可能的值为:

Current - 最新版本。
LTS - 长期支持频道(最新支持的版本)。
AB 格式的两部分版本,代表特定版本(例如,2.1或3.0)。
ABCxx 格式的三部分版本,代表特定的 SDK 版本(例如,5.0.1xx 或 5.0.2xx)。从 5.0 版本开始可用。
当使用除版本之外的任何版本时,该version参数会覆盖该channel参数latest。

默认值为LTS。有关 .NET 支持渠道的详细信息,请参阅.NET 支持策略页面。

-DryRun|--dry-run

如果设置,脚本将不会执行安装。相反,它显示用于一致安装当前请求的 .NET CLI 版本的命令行。例如,如果您指定 version latest,它会显示具有特定版本的链接,以便可以在构建脚本中确定性地使用此命令。如果您更喜欢自己安装或下载它,它还会显示二进制文件的位置。

-FeedCredential|--feed-credential

用作附加到 Azure 源的查询字符串。它允许更改 URL 以使用非公共 blob 存储帐户。

--help

打印出脚本的帮助。仅适用于 bash 脚本。对于 PowerShell,请使用Get-Help ./dotnet-install.ps1.

-InstallDir|--install-dir <DIRECTORY>

指定安装路径。如果目录不存在,则创建该目录。默认值为%LocalAppData%\Microsoft\dotnet(在 Windows 上)和$HOME/.dotnet在 Linux/macOS 上。二进制文件直接放置在此目录中。

-JSonFile|--jsonfile <JSONFILE>

指定将用于确定 SDK 版本的global.json文件的路径。该global.json文件必须有一个值sdk:version。

-NoCdn|--no-cdn

禁用从Azure 内容交付网络 (CDN) 下载并直接使用未缓存的源。

-NoPath|--no-path

如果设置,安装文件夹不会导出到当前会话的路径。默认情况下,脚本会修改 PATH,这使得 .NET CLI 在安装后立即可用。

-ProxyAddress

如果设置,安装程序在发出 Web 请求时使用代理。(仅对 Windows 有效。)

-ProxyBypassList <LIST_OF_URLS>

如果设置为ProxyAddress,则提供将绕过代理的逗号分隔 url 列表。(仅对 Windows 有效。)

ProxyUseDefaultCredentials

如果设置,安装程序在使用代理地址时使用当前用户的凭据。(仅对 Windows 有效。)

-Quality|--quality <QUALITY>

下载频道中指定质量的最新版本。可能的值是:daily, signed, validated, preview, GA。仅与channel. 不适用于当前和 LTS 频道,如果使用这些频道之一,则将被忽略。

对于 SDK 安装,请使用channelinA.B或A.B.Cxxformat。对于运行时安装,使用channel的A.B格式。

当使用任何其他参数时,该version参数会覆盖channel和quality参数。versionlatest

自 5.0 版本以来可用。

-Runtime|--runtime <RUNTIME>

仅安装共享运行时,而不是整个 SDK。可能的值为:

dotnet-Microsoft.NETCore.App共享运行时。
aspnetcore-Microsoft.AspNetCore.App共享运行时。
windowsdesktop-Microsoft.WindowsDesktop.App共享运行时。
--runtime-id <RID> [已弃用]

指定要为其安装工具的运行时标识符。使用linux-x64便携式Linux操作系统。(仅对 Linux/macOS 和 .NET Core 2.1 之前的版本有效。)

--os <OPERATING_SYSTEM>

指定要为其安装工具的操作系统。可能的值是:osx, linux, linux-musl, freebsd, rhel.6。(适用于 .NET Core 2.1 及更高版本。)

该参数是可选的,仅应在需要覆盖脚本检测到的操作系统时使用。

-SharedRuntime|--shared-runtime

 笔记

此参数已过时,可能会在脚本的未来版本中删除。推荐的替代方案是-Runtime|--runtime选项。

仅安装共享运行时位,而不是整个 SDK。此选项等效于指定-Runtime|--runtime dotnet.

-SkipNonVersionedFiles|--skip-non-versioned-files

跳过安装非版本化文件,例如dotnet.exe,如果它们已经存在。

-UncachedFeed|--uncached-feed

允许更改此安装程序使用的未缓存提要的 URL。我们建议您不要更改此值。

-Verbose|--verbose

显示诊断信息。

-Version|--version <VERSION>

表示特定的构建版本。可能的值为:

latest- 频道上的最新版本(与-Channel选项一起使用)。
代表特定构建版本的 XYZ 格式的三部分版本;取代-Channel选项。例如:2.0.0-preview2-006120。
如果未指定,则-Version默认为latest。

例子
将最新的长期支持 (LTS) 版本安装到默认位置:

视窗:

电源外壳

复制
./dotnet-install.ps1 -Channel LTS
macOS/Linux:

重击

复制
./dotnet-install.sh --channel LTS
将最新的 6.0.1xx SDK 预览版安装到指定位置:

视窗:

电源外壳

复制
./dotnet-install.ps1 -Channel 6.0.1xx -Quality preview -InstallDir C:\cli
macOS/Linux:

重击

复制
./dotnet-install.sh --channel 6.0.1xx --quality preview --install-dir ~/cli
安装 3.0.0 版本的共享运行时:

视窗:

电源外壳

复制
./dotnet-install.ps1 -Runtime dotnet -Version 3.0.0
macOS/Linux:

重击

复制
./dotnet-install.sh --runtime dotnet --version 3.0.0
获取脚本并在公司代理后面安装 2.1.2 版本(仅限 Windows):

电源外壳

复制
Invoke-WebRequest 'https://dot.net/v1/dotnet-install.ps1' -Proxy $env:HTTP_PROXY -ProxyUseDefaultCredentials -OutFile 'dotnet-install.ps1';
./dotnet-install.ps1 -InstallDir '~/.dotnet' -Version '2.1.2' -ProxyAddress $env:HTTP_PROXY -ProxyUseDefaultCredentials;
获取脚本并安装.NET CLI 单行示例:

视窗:

电源外壳

复制
# Run a separate PowerShell process because the script calls exit, so it will end the current PowerShell session.
&powershell -NoProfile -ExecutionPolicy unrestricted -Command "[Net.ServicePointManager]::SecurityProtocol = [Net.SecurityProtocolType]::Tls12; &([scriptblock]::Create((Invoke-WebRequest -UseBasicParsing 'https://dot.net/v1/dotnet-install.ps1'))) <additional install-script args>"
macOS/Linux:

重击

复制
curl -sSL https://dot.net/v1/dotnet-install.sh | bash /dev/stdin <additional install-script args>

本文系外文翻译,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文系外文翻译前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
相关产品与服务
内容分发网络 CDN
内容分发网络(Content Delivery Network,CDN)通过将站点内容发布至遍布全球的海量加速节点,使其用户可就近获取所需内容,避免因网络拥堵、跨运营商、跨地域、跨境等因素带来的网络不稳定、访问延迟高等问题,有效提升下载速度、降低响应时间,提供流畅的用户体验。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档