今天突然想到類似adb、ffmpeg這樣的程序是怎么實現的,通過命令行輸入不同的參數就可以執行不同的命令。
研究了一下,其實實現的邏輯很簡單,以C#控制台程序為例,Main函數是這樣的
class Program
{
static void Main(string[] args)
{
}
}
其中string [ ] args便是命令行參數了,簡單驗證一下,新建一個命令行程序,寫入這樣一段代碼
class Program
{
static void Main(string[] args)
{
for (int i = 0; i < args.Length; i++)
{
Console.WriteLine(args[i]);
}
Console.ReadLine();
}
}
編譯后,在cmd中輸入參數

結果打印出了輸入的 a b c ,這樣我們就可以通過判斷條件,來執行不同命令行參數所對應的邏輯了。
using System;
namespace 命令行參數設置程序
{
class Program
{
static void Main(string[] args)
{
for (int i = 0; i < args.Length; i++)
{
switch (args[i])
{
case "-h":
Console.WriteLine("-h: this is help");
break;
default:
Console.WriteLine("error: No such command");
break;
}
}
Console.ReadLine();
}
}
}

