开发一款提高效率工作的命令行程序

发布时间 2023-05-03 17:57:29作者: 华hhh

开发工作中我们常用到"时间戳和时间"、"生成guid"、"模拟身份证号",来模拟数据校验和显示;每一次都去找在线工具,确实可以,但我觉得挺麻烦,于是乎想到了自定义一个命令行。

目前我已经实现以下功能:

Usage:  [options]

Options:
  -?|-about  Show help information.
  -ts-now     当前时间戳
  -ts        转换为时间戳
  -t-now     当前时间
  -t        转换为时间
  -clear     清空
  -echo      打印C#代码结果
  -exit      退出
  -guid-l     生成小写Guid
  -guid-u     生成大写Guid
  -snow      生成雪花id
  -id-no     随机身份证号

具体怎样实现呢?

  1. 创建控制台应用并安装nuget包

McMaster.Extensions.CommandLineUtils

dotnet add package McMaster.Extensions.CommandLineUtils --version 4.0.2

NuGet\Install-Package McMaster.Extensions.CommandLineUtils -Version 4.0.2
2. 创建命令

var app = new CommandLineApplication();

app.HelpOption("-?|-h|-help|-about");
var tsNow = app.Option("-ts-now", "当前时间戳", CommandOptionType.NoValue);
  1. 执行命令,ExecuteUtils.Ts()为自定义方法
app.OnExecute(() =>
{
    if (tsNow.HasValue()) Console.WriteLine(ExecuteUtils.Ts());

以上就可以通过命令行参数执行相应代码了
参考官网:https://natemcmaster.github.io/CommandLineUtils/index.html