F#奇妙游(2):dotnet命令行工具

TUI vs. GUI

TUI和GUI分别是文本用户界面(Text User Interface)和图形(Graphic User Interface),是计算机交互界面的两种流派。

最初的时候,神研制了大型机,其输入输出依靠卡带;后来神说,要用键盘,于是就有了命令行;神看到敲命令的人头都秃了,于是说,要用轨迹球,于是就开始了GUI的狂飙突进。

在这里插入图片描述

虽然有了GUI,更多普通人得以轻松使用电脑。但是对程序员中,TUI不能说江河日下,只能说情根深种。

GUI的优点不用仔细说,大家都喜欢外表靓丽的大姐姐。但是TUI在需要精确控制、需要反复执行的任务中,有着GUI不可替代的作用。

微软一开始MS-DOS之后就一路转进Windows的各种版本,一度完全不重视TUI,但是最近也从心搞起了开源和TUI。dotnet就是.NET平台开发各种命令行工具的驱动程序,统一称为:dotnet CLI(command line interface)。

dotnet命令行

dotnet cli

值得注意的是,这个工具是.NET SDK开源的一部分,源代码在CLI

最重要的几个命令:

其他还有什么增加NuGet包和引用依赖的add命令,启动交互脚本的fsi命令,调试web应用的watch命令,惯例解决方案的sln命令,清理输出的clean命令。每个命令的具体使用可以用如下命令查看帮助。

dotnet add --help

dotnet安装及多版本

dotnet --list-sdks

比如可以得到如下的输出。

7.0.203 [C:\Program Files\dotnet\sdk]
8.0.100-preview.5.23303.2 [C:\Program Files\dotnet\sdk]

dotnet --version

7.0.203

那么要如何选择使用哪个版本的dotnet呢?dotnet采用一个叫global.json的文件来记录这个信息。dotnet运行的时候,会在当前文件夹以及父文件夹中寻找这个文件,那么就意味着,在一个文件夹中放一个这个文件,文件夹中所有的项目都会使用该版本的dotnet。

这个文件在一般的情况下并不是必须的,dotnet没找到这个文件就会直接用最新的版本。但是要做自动化的持续集成(CI),这个文件通常就十分必要。

{
  "sdk": {
    "version": "7.0.203"
  }
}

这个文件也没有必要自己手写。可以用命令:

dotnet new globaljson

来生成,在根据前面dotnet --version的输出来变更字符串version的值。

如果有新的补丁可以安装,就可以运行

winget install Microsoft.DotNet.SDK.7

就能安装新的版本,例如"7.0.305",此时,前面的版本同样存在。

dotnet --list-sdks

7.0.203 [C:\Program Files\dotnet\sdk]
7.0.305 [C:\Program Files\dotnet\sdk]
8.0.100-preview.5.23303.2 [C:\Program Files\dotnet\sdk]

更新global.json的版本就可以使用新的补丁。

总结

  • .NET命令行接口(CLI)是一个跨平台的工具链,用于支持.NET应用的开发、构建、运行和发布。
  • 安装.NET SDK可以用winget,也可以用PowerShell脚本bash脚本
  • dotnet CLI提供的功能有完备的帮助,dotnet -h或者dotnet --help可以查看。
  • dotnet CLI各个功能的帮助通过dotnet command -h或者dotnet command --help可以查看。
posted @ 2023-06-30 10:13  大福是小强  阅读(17)  评论(0编辑  收藏  举报  来源