.NET(Core)的核心组件CLI及命令大全

CLI全称Command Line Interface 命令行接口,.NET 命令行接口 (CLI) 工具是用于开发、生成、运行和发布 .NET 应用程序的跨平台工具链。它是.NET Core 的核心组件之一,整个CLI项目不同的语言开发的多个工具组成,一个工具dotnet,项目管理、项目构建、代码运行、包管理。.NET 命令行接口 (CLI) 工具只适用于 .NET Core 2.1 SDK 及更高版本。做跨平台开发建议学习CLI命令,如果要你在linux上操作.NET那么CLI命令就能体现它的优势了,说白了它是用命令行来执行.NET的各种操作。.

怎么执行呢?

很简单,只要安装了.NET Core 2.0 以上SDK的环境直接打开CMD就可以执行命令,或者用Developer PowerShell执行。CLI 命令结构包含驱动程序(“dotnet”)和命令,还可能包含命令参数和选项。

dotnet <TEMPLATE> -<TEMPLATE> --<TEMPLATE>

例如创建一个控制台程序:

//创建项目名称为test001的控制台程序dotnet new console -n --test001

.NET(Core)的核心组件CLI及命令大全

这样就在D盘test文件夹下创建了一个控制台应用。如下

.NET(Core)的核心组件CLI及命令大全

如何编译这个项目:

//编译这个项目到buildtest001文件夹下dotnet build -o buildtest001

.NET(Core)的核心组件CLI及命令大全

编译后的生成的文件

.NET(Core)的核心组件CLI及命令大全

如何运行这个控制台项目:

dotnet run /buildtest001/test001.dll

.NET(Core)的核心组件CLI及命令大全

成功运行,并打印了Hello, World!

 .NET 命令行接口 (CLI) 命令说明如下:

常规

命令 函数
dotnet build 生成 .NET 应用程序。
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 sdk check 显示已安装 SDK 和运行时版本的最新状态。
dotnet sln 用于添加、删除和列出解决方案文件中项目的选项。
dotnet store 将程序集存储到运行时包存储区。
dotnet test 使用测试运行程序运行测试。

项目引用

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

NuGet 包

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

NuGet 命令

命令 函数
dotnet nuget delete 从服务器删除或取消列出包。
dotnet nuget push 将包推送到服务器,并将其发布。
dotnet nuget locals 清除或列出本地 NuGet 资源,例如 http 请求缓存、临时缓存或计算机范围的全局包文件夹。
dotnet nuget add source 添加 NuGet 源。
dotnet nuget disable source 禁用 NuGet 源。
dotnet nuget enable source 启用 NuGet 源。
dotnet nuget list source 列出所有已配置的 NuGet 源。
dotnet nuget remove source 删除 NuGet 源。
dotnet nuget update source 更新 NuGet 源。

工作负载命令

命令 函数
dotnet workload install 安装可选的工作负载。
dotnet workload list 列出已安装的所有工作负载。
dotnet workload repair 修复所有已安装的工作负载。
dotnet workload search 列出所选工作负载或所有可用的工作负载。
dotnet workload uninstall 卸载工作负载。
dotnet workload update 重新安装所有已安装的工作负载。

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

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

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

其他工具

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

工具 函数
dev-certs 创建和管理开发证书。
ef Entity Framework Core 命令行工具。
user-secrets 管理开发用户机密。
watch 当应用程序检测到源代码中的更改时,重新启动或热重新加载应用程序的文件观察程序。

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

结语

.NET 命令行接口 (CLI) 工具通过命令行的方式实现了.NET的各种骚操作。作为跨平台开发者,学习CLI命令也可以让程序运行在多个平台上,方便跨平台部署调试测试等,这也让开发者在不需要打开编辑器的情况实现各种功能。如果对于CLI有啥看法,欢迎留言讨论。