使用英语阅读

通过


dotnet 命令

本文适用于: ✔️ .NET Core 3.1 SDK 及更高版本

名字

#D0 - .NET CLI 的通用驱动程序。

概要

若要获取有关可用命令和环境的信息,请执行以下作:

dotnet [--version] [--info] [--list-runtimes] [--list-sdks]

dotnet -h|--help

若要运行命令(需要安装 SDK):

dotnet <COMMAND> [-d|--diagnostics] [-h|--help] [--verbosity <LEVEL>]
    [command-options] [arguments]

运行应用程序:

dotnet [--additionalprobingpath <PATH>] [--additional-deps <PATH>]
    [--fx-version <VERSION>]  [--roll-forward <SETTING>]
    <PATH_TO_APPLICATION> [arguments]

dotnet exec [--additionalprobingpath <PATH>] [--additional-deps <PATH>]
    [--depsfile <PATH>]
    [--fx-version <VERSION>]  [--roll-forward <SETTING>]
    [--runtimeconfig <PATH>]
    <PATH_TO_APPLICATION> [arguments]

说明

#D0 命令具有两个函数:

  • 它提供用于处理 .NET 项目的命令。

    例如,dotnet build 生成项目。 每个命令定义自己的选项和参数。 所有命令都支持用于打印有关如何使用该命令的简短文档的 #D0 选项。

  • 它运行 .NET 应用程序。

    指定要运行该应用程序的应用程序 #D0 文件的路径。 若要运行应用程序,则意味着查找和执行入口点,在这种情况下,控制台应用是 #D0 方法。 例如,#D0 运行 #D1 应用程序。 请参阅 #B0 .NET 应用程序部署 #C1 了解部署选项。

选项

可以使用不同的选项:

  • 显示有关环境的信息。
  • 运行命令。
  • 运行应用程序。

用于显示环境信息和可用命令的选项

当 #D0 本身使用时,可以使用以下选项,而无需指定要运行的命令或应用程序。 例如,dotnet --infodotnet --version。 输出有关环境的信息。

  • --info

    输出有关 .NET 安装和计算机环境(例如当前作系统)的详细信息,以及提交 .NET 版本的 SHA。

  • --version

输出命令使用的 dotnet .NET SDK 版本,这些版本可能受 global.json 文件的影响。 仅在安装 SDK 时可用。

  • --list-runtimes

    输出已安装的 .NET 运行时的列表。 SDK 的 x86 版本仅列出 x86 运行时,SDK 的 x64 版本仅列出 x64 运行时。

  • --list-sdks

    输出已安装的 .NET SDK 的列表。

  • -?|-h|--help

    输出可用命令的列表。

用于运行命令的选项

以下选项适用于使用命令 #D0。 例如,dotnet build --helpdotnet build --verbosity diagnostic

  • -d|--diagnostics

    启用诊断输出。

  • -v|--verbosity <LEVEL>

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

  • -?|-h|--help

    输出给定命令的文档。 例如,#D0 显示 #D1 命令的帮助。

  • command options

    每个命令定义特定于该命令的选项。 有关可用选项列表,请参阅特定命令页。

用于运行应用程序的选项

#D0 运行应用程序时,可以使用以下选项。 例如,dotnet --roll-forward Major myapp.dll

  • --additionalprobingpath <PATH>

    包含要探测的探测策略和程序集的路径。 重复该选项以指定多个路径。

  • --additional-deps <PATH>

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

  • --roll-forward <SETTING>

    控制如何向应用应用前滚。 #D0 可以是以下值之一。 如果未指定,则 Minor 为默认类型。

    • #D0 - 前滚到最高修补程序版本。 这会禁用次要版本前滚。
    • #D0 - 如果缺少请求的次要版本,则前滚到最低更高的次要版本。 如果请求的次要版本存在,则使用 LatestPatch 策略。
    • #D0 - 如果缺少请求的主版本,则前滚到更高的主版本和最低次要版本。 如果存在请求的主版本,则使用次要策略。
    • #D0 - 即使存在请求的次要版本,也会前滚到最高次要版本。 适用于组件托管方案。
    • #D0 - 即使存在请求的主版本,也会前滚到最高主版本和最高次要版本。 适用于组件托管方案。
    • #D0 - 不要前滚。 仅绑定到指定版本。 不建议将此策略用于常规用途,因为它禁用了前滚到最新修补程序的功能。 仅建议使用此值进行测试。

    除 #B0 外,所有设置都将使用最高可用的修补程序版本。

    还可以在项目文件属性、运行时配置文件属性和环境变量中配置前滚行为。 有关详细信息,请参阅 #B0 主版本运行时前滚 #A1。

  • --fx-version <VERSION>

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

    此选项替代应用程序 #D0 文件中第一个框架引用的版本。 这意味着,仅当只有一个框架引用时,它才按预期工作。 如果应用程序有多个框架引用,则使用此选项可能会导致错误。

使用 #D0 命令运行应用程序的选项

仅当 #D0 使用 #D1 命令运行应用程序时,以下选项才可用。 例如,dotnet exec --runtimeconfig myapp.runtimeconfig.json myapp.dll

  • --depsfile <PATH>

    deps.json 文件的路径。 deps.json 文件是一个配置文件,其中包含运行应用程序所需的依赖项的相关信息。 此文件由 .NET SDK 生成。

  • --runtimeconfig <PATH>

    runtimeconfig.json 文件的路径。 runtimeconfig.json 文件包含运行时设置,通常命名<为 applicationname>.runtimeconfig.json。 有关详细信息,请参阅 #B0 .NET 运行时配置设置 #A1。

dotnet 命令

概况

指令 功能
dotnet build 生成 .NET 应用程序。
#B0 dotnet build-server #C1 与生成启动的服务器交互。
#B0 dotnet clean #C1 清理生成输出。
#B0 dotnet exec #C1 运行 .NET 应用程序。
#B0 dotnet 帮助 #C1 联机显示命令的更详细的文档。
#B0 dotnet migrate #C1 将有效的预览版 2 项目迁移到 .NET Core SDK 1.0 项目。
dotnet msbuild 提供对 MSBuild 命令行的访问权限。
#B0 dotnet new #C1 为给定模板初始化 C# 或 F# 项目。
#B0 dotnet pack #C1 创建代码的 NuGet 包。
dotnet publish 发布依赖于 .NET Framework 或自包含的应用程序。
dotnet restore 还原给定应用程序的依赖项。
#B0 dotnet run #C1 从源运行应用程序。
#B0 dotnet sdk 检查 #C1 显示已安装 SDK 和运行时版本的 up-to日期状态。
#B0 dotnet sln #C1 用于在解决方案文件中添加、删除和列出项目的选项。
#B0 dotnet store #C1 将程序集存储在运行时包存储中。
dotnet test 使用测试运行程序运行测试。

项目参考

指令 功能
dotnet reference add 添加项目引用。
dotnet 引用列表 列出项目引用。
dotnet reference remove 删除项目引用。

NuGet 包

指令 功能
dotnet package add 添加 NuGet 包。
dotnet 包列表 列出 NuGet 包。
dotnet 包删除 删除 NuGet 包。
dotnet 包搜索 搜索 NuGet 包。

NuGet 命令

指令 功能
#B0 dotnet nuget delete #C1 从服务器中删除或取消列出包。
#B0 dotnet nuget 推送 #C1 将包推送到服务器并发布它。
#B0 dotnet nuget 局部变量 #C1 清除或列出本地 NuGet 资源,例如 http 请求缓存、临时缓存或计算机范围的全局包文件夹。
#B0 dotnet nuget 添加源 #C1 添加 NuGet 源。
#B0 dotnet nuget 禁用源 #C1 禁用 NuGet 源。
#B0 dotnet nuget 启用源 #C1 启用 NuGet 源。
#B0 dotnet nuget 列表源 #C1 列出所有配置的 NuGet 源。
#B0 dotnet nuget 删除源 #C1 删除 NuGet 源。
#B0 dotnet nuget 更新源 #C1 更新 NuGet 源。

工作负荷命令

指令 功能
dotnet workload install 安装可选工作负荷。
#B0 dotnet 工作负荷列表 #C1 列出所有已安装的工作负载。
#B0 dotnet 工作负荷修复 #C1 修复所有已安装的工作负荷。
#B0 dotnet 工作负荷搜索 #C1 列出所选工作负荷或所有可用的工作负荷。
#B0 dotnet 工作负荷卸载 #C1 卸载工作负荷。
#B0 dotnet 工作负荷更新 #C1 重新安装所有已安装的工作负载。

全局、工具路径和本地工具命令

工具是从 NuGet 包安装的控制台应用程序,并从命令提示符调用。 可以自行编写工具或安装由第三方编写的工具。 工具也称为全局工具、工具路径工具和本地工具。 有关详细信息,请参阅 #B0 .NET 工具概述 #A1。

指令 功能
dotnet tool install 在计算机上安装工具。
#B0 dotnet 工具列表 #C1 列出计算机上当前安装的所有全局工具、工具路径或本地工具。
#B0 dotnet 工具搜索 #C1 搜索 NuGet.org 其名称或元数据中具有指定搜索词的工具。
#B0 dotnet 工具卸载 #C1 从计算机中卸载工具。
#B0 dotnet 工具更新 #C1 更新计算机上安装的工具。

其他工具

以下附加工具作为 .NET SDK 的一部分提供:

工具 功能
#B0 开发证书 #C1 创建和管理开发证书。
#B0 ef #C1 Entity Framework Core 命令行工具。
#B0 用户机密 #C1 管理开发用户机密。
#B0 监视 #C1 当应用程序检测到源代码中的更改时,它会重启或热重载应用程序的文件观察程序。

有关每个工具的详细信息,请键入 #B0。

例子

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

dotnet new console

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

dotnet build

运行应用程序:

dotnet exec myapp.dll
dotnet myapp.dll

另请参阅