dotnet 命令dotnet command

本文内容

本文适用于:✓ .NET Core 1.x SDK ✓ .NET Core 2.x SDK

nameName

dotnet - 一款管理 .NET 源代码和二进制文件的工具。

摘要Synopsis

  1. dotnet [command] [arguments] [--additional-deps] [--additionalprobingpath] [--depsfile]
  2. [-d|--diagnostics] [--fx-version] [-h|--help] [--info] [--list-runtimes] [--list-sdks] [--roll-forward-on-no-candidate-fx] [--runtimeconfig] [-v|--verbosity] [--version]
  1. dotnet [command] [arguments] [--additional-deps] [--additionalprobingpath] [--depsfile]
  2. [-d|--diagnostics] [--fx-version] [-h|--help] [--info] [--roll-forward-on-no-candidate-fx]
  3. [--runtimeconfig] [-v|--verbosity] [--version]
  1. dotnet [command] [arguments] [--additionalprobingpath] [--depsfile] [-d|--diagnostics]
  2. [--fx-version] [-h|--help] [--info] [--runtimeconfig] [-v|--verbosity] [--version]

说明Description

dotnet 是一款管理 .NET 源代码和二进制文件的工具。它公开执行特定任务的命令,例如 dotnet builddotnet run每个命令都定义自己的参数。在每个命令后键入 —help 以访问简要帮助文档。

可以使用 dotnet 来运行应用程序,方法是指定应用程序 DLL,如 dotnet myapp.dll.要了解部署选项,请参阅 .NET Core 应用程序部署

选项Options

—additional-deps <PATH>

附加 .deps.json 文件的路径 。

—additionalprobingpath <PATH>

包含要进行探测的探测策略和程序集的路径。

—depsfile

deps.json 文件的路径 。

deps.json 文件包含依赖项、编译依赖项和用于解决程序集冲突的版本信息列表 。有关此文件的详细信息,请参阅 GitHub 上的运行时配置文件

-d|—diagnostics

启用诊断输出。

—fx-version <VERSION>

用于运行应用程序的 .NET Core 运行时版本。

-h|—help

打印出给定命令的文档,如 dotnet build —helpdotnet —help 打印可用命令列表。

—info

打印出有关 .NET Core 安装和计算机环境(如当前操作系统)的详细信息,并提交 .NET Core 版本的 SHA。

—list-runtimes

显示已安装的 .NET Core 运行时。

—list-sdks

显示已安装的 .NET Core SDK。

—roll-forward-on-no-candidate-fx <N>

所需的共享框架不可用时,请定义行为。N 可以是:

  • 0 - 禁用次要版本前滚。
  • 1 - 前滚次要版本,但不前滚主版本。这是默认行为。
  • 2 - 前滚次要和主版本。有关详细信息,请参阅前滚

—runtimeconfig

runtimeconfig.template.json 文件的路径 。

runtimeconfig.template.json 文件是包含运行时配置设置的配置文件 。有关详细信息,请参阅 GitHub 上的运行时配置文件

-v|—verbosity <LEVEL>

设置命令的详细级别。允许使用的值为 q[uiet]m[inimal]n[ormal]d[etailed]diag[nostic]并非在每个命令中均受支持;请参阅特定的命令页,确定此选项是否可用。

—version

打印使用中的 .NET Core SDK 版本。

—additional-deps <PATH>

附加 .deps.json 文件的路径 。

—additionalprobingpath <PATH>

包含要进行探测的探测策略和程序集的路径。

—depsfile

deps.json 文件的路径 。

deps.json 文件包含依赖项、编译依赖项和用于解决程序集冲突的版本信息列表 。有关详细信息,请参阅 GitHub 上的运行时配置文件

-d|—diagnostics

启用诊断输出。

—fx-version <VERSION>

用于运行应用程序的 .NET Core 运行时版本。

-h|—help

打印出给定命令的文档,如 dotnet build —helpdotnet —help 打印可用命令列表。

—info

打印出有关 .NET Core 安装和计算机环境(如当前操作系统)的详细信息,并提交 .NET Core 版本的 SHA。

—roll-forward-on-no-candidate-fx

如果设置为 0,则禁用次要版本前滚。有关详细信息,请参阅前滚

—runtimeconfig

runtimeconfig.template.json 文件的路径 。

runtimeconfig.template.json 文件是包含运行时配置设置的配置文件 。有关详细信息,请参阅 GitHub 上的运行时配置文件

-v|—verbosity <LEVEL>

设置命令的详细级别。允许使用的值为 q[uiet]m[inimal]n[ormal]d[etailed]diag[nostic]并非在每个命令中均受支持;请参阅特定的命令页,确定此选项是否可用。

—version

打印使用中的 .NET Core SDK 版本。

—additionalprobingpath <PATH>

包含要进行探测的探测策略和程序集的路径。

—depsfile

deps.json 文件的路径 。

deps.json 文件包含依赖项、编译依赖项和用于解决程序集冲突的版本信息列表 。有关详细信息,请参阅 GitHub 上的运行时配置文件

-d|—diagnostics

启用诊断输出。

—fx-version <VERSION>

用于运行应用程序的 .NET Core 运行时版本。

-h|—help

打印出给定命令的文档,如 dotnet build —helpdotnet —help 打印可用命令列表。

—info

打印出有关 .NET Core 安装和计算机环境(如当前操作系统)的详细信息,并提交 .NET Core 版本的 SHA。

—runtimeconfig

runtimeconfig.template.json 文件的路径 。

runtimeconfig.template.json 文件是包含运行时配置设置的配置文件 。有关详细信息,请参阅 GitHub 上的运行时配置文件

-v|—verbosity <LEVEL>

设置命令的详细级别。允许使用的值为 q[uiet]m[inimal]n[ormal]d[etailed]diag[nostic]并非在每个命令中均受支持;请参阅特定的命令页,确定此选项是否可用。

—version

打印使用中的 .NET Core SDK 版本。

dotnet 命令dotnet commands

常规General

命令函数
dotnet build生成 .NET Core 应用程序。
dotnet build-server与通过生成启动的服务器进行交互。
dotnet clean清除生成输出。
dotnet help显示命令更详细的在线文档。
dotnet migrate将有效的预览版 2 项目迁移到 .NET Core SDK 1.0 项目。
dotnet msbuild提供对 MSBuild 命令行的访问权限。
dotnet new为给定的模板初始化 C# 或 F# 项目。
dotnet pack创建代码的 NuGet 包。
dotnet publish发布 .NET 依赖于框架或独立应用程序。
dotnet restore还原给定应用程序的依赖项。
dotnet run从源运行应用程序。
dotnet sln用于添加、删除和列出解决方案文件中项目的选项。
dotnet store将程序集存储到运行时包存储区。
dotnet test使用测试运行程序运行测试。
命令函数
dotnet build生成 .NET Core 应用程序。
dotnet clean清除生成输出。
dotnet help显示命令更详细的在线文档。
dotnet migrate将有效的预览版 2 项目迁移到 .NET Core SDK 1.0 项目。
dotnet msbuild提供对 MSBuild 命令行的访问权限。
dotnet new为给定的模板初始化 C# 或 F# 项目。
dotnet pack创建代码的 NuGet 包。
dotnet publish发布 .NET 依赖于框架或独立应用程序。
dotnet restore还原给定应用程序的依赖项。
dotnet run从源运行应用程序。
dotnet sln用于添加、删除和列出解决方案文件中项目的选项。
dotnet store将程序集存储到运行时包存储区。
dotnet test使用测试运行程序运行测试。
命令函数
dotnet build生成 .NET Core 应用程序。
dotnet clean清除生成输出。
dotnet migrate将有效的预览版 2 项目迁移到 .NET Core SDK 1.0 项目。
dotnet msbuild提供对 MSBuild 命令行的访问权限。
dotnet new为给定的模板初始化 C# 或 F# 项目。
dotnet pack创建代码的 NuGet 包。
dotnet publish发布 .NET 依赖于框架或独立应用程序。
dotnet restore还原给定应用程序的依赖项。
dotnet run从源运行应用程序。
dotnet sln用于添加、删除和列出解决方案文件中项目的选项。
dotnet test使用测试运行程序运行测试。

项目引用Project references

命令函数
dotnet add reference添加项目引用。
dotnet list reference列出项目引用。
dotnet remove reference删除项目引用。

NuGet 包NuGet packages

命令函数
dotnet add package添加 NuGet 包。
dotnet remove package删除 NuGet 包。

NuGet 命令NuGet commands

命令函数
dotnet nuget delete从服务器删除或取消列出包。
dotnet nuget locals清除或列出本地 NuGet 资源,例如 http 请求缓存、临时缓存或计算机范围的全局包文件夹。
dotnet nuget push将包推送到服务器,并将其发布。

全局工具命令Global Tools commands

.NET Core 全局工具可与 .NET Core SDK 2.1.300 一起开始使用:

命令函数
dotnet tool install在计算机上安装全局工具。
dotnet tool list列出当前安装在计算机上的默认目录中或指定路径中的所有全局工具。
dotnet tool uninstall从计算机中卸载全局工具。
dotnet tool update在计算机上更新全局工具。

其他工具Additional tools

自 .NET Core SDK 2.1.300 开始,许多使用 DotnetCliToolReference 的仅在每个项目的基础上可用的工具现作为 .NET Core SDK 的一部分提供。下表中列出了这些工具:

工具函数
dev-certs创建和管理开发证书。
efEntity Framework Core 命令行工具。
sql-cacheSQL Server 缓存命令行工具。
user-secrets管理开发用户机密。
watch启动文件观察程序,以在更改文件时运行命令。

有关每个工具的详细信息,请键入 dotnet <tool-name> —help

示例Examples

创建新的 .NET Core 控制台应用程序:

dotnet new console

还原给定应用程序的依赖项:

dotnet restore

备注

从 .NET Core 2.0 SDK 开始,无需运行 dotnet restore,因为它由所有需要还原的命令隐式运行,如 dotnet newdotnet builddotnet run在执行显式还原有意义的某些情况下,例如 Azure DevOps Services 中的持续集成生成中,或在需要显式控制还原发生时间的生成系统中,它仍然是有效的命令。

生成给定目录中的项目及其依赖项:

dotnet build

运行应用程序 DLL,如 myapp.dll

dotnet myapp.dll

环境变量Environment variables

DOTNET_PACKAGES

全局包文件夹。如果未设置,则默认为 Unix 上的 ~/.nuget/packages 或 Windows 上的 %userprofile%.nuget\packages

DOTNET_SERVICING

指定加载运行时期间共享主机要使用的服务索引的位置。

DOTNET_CLI_TELEMETRY_OPTOUT

指定是否收集并向 Microsoft 发送 .NET Core 工具使用情况的相关数据。设置为 true 以选择退出遥测功能(接受的值为 true1yes)。否则,设置为 false 以选择加入遥测功能(接受的值为 false0no)。如果未设置,则默认为 false 且遥测功能为活动状态。

DOTNET_MULTILEVEL_LOOKUP

指定是否从全局位置解析 .NET Core 运行时、共享框架或 SDK。如果未设置,则默认为 true设置为 false 不从全局位置解析,并且具有独立的 .NET Core 安装(接受的值为 0false)。有关多级别查找的详细信息,请参阅 Multi-level SharedFX Lookup(多级别 SharedFX 查找)。

DOTNET_ROLL_FORWARD_ON_NO_CANDIDATE_FX

如果设置为 0,则禁用次要版本前滚。有关详细信息,请参阅前滚

DOTNET_PACKAGES

主包缓存。如果未设置,则默认为 Unix 上的 $HOME/.nuget/packages 或 Windows 上的 %userprofile%.nuget\packages

DOTNET_SERVICING

指定加载运行时期间共享主机要使用的服务索引的位置。

DOTNET_CLI_TELEMETRY_OPTOUT

指定是否收集并向 Microsoft 发送 .NET Core 工具使用情况的相关数据。设置为 true 以选择退出遥测功能(接受的值为 true1yes)。否则,设置为 false 以选择加入遥测功能(接受的值为 false0no)。如果未设置,则默认为 false 且遥测功能为活动状态。

DOTNET_MULTILEVEL_LOOKUP

指定是否从全局位置解析 .NET Core 运行时、共享框架或 SDK。如果未设置,则默认为 true设置为 false 不从全局位置解析,并且具有独立的 .NET Core 安装(接受的值为 0false)。有关多级别查找的详细信息,请参阅 Multi-level SharedFX Lookup(多级别 SharedFX 查找)。

DOTNET_PACKAGES

主包缓存。如果未设置,则默认为 Unix 上的 $HOME/.nuget/packages 或 Windows 上的 %userprofile%.nuget\packages

DOTNET_SERVICING

指定加载运行时期间共享主机要使用的服务索引的位置。

DOTNET_CLI_TELEMETRY_OPTOUT

指定是否收集并向 Microsoft 发送 .NET Core 工具使用情况的相关数据。设置为 true 以选择退出遥测功能(接受的值为 true1yes)。否则,设置为 false 以选择加入遥测功能(接受的值为 false0no)。如果未设置,则默认为 false 且遥测功能为活动状态。

请参阅See also