開發工作中我們常用到"時間戳和時間"、"生成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 隨機身份證號
具體怎樣實現呢?
- 建立控制檯應用並安裝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);
- 執行命令,
ExecuteUtils.Ts()
為自定義方法
app.OnExecute(() =>
{
if (tsNow.HasValue()) Console.WriteLine(ExecuteUtils.Ts());
}
以上就可以透過命令列引數執行相應程式碼了
參考官網:https://natemcmaster.github.io/CommandLineUtils/index.html