通过输入命令行参数来控制程序

 

 

今天突然想到类似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();
        }
    }
}

  

 

posted on 2019-07-16 11:58  Jason_c  阅读(1106)  评论(0编辑  收藏  举报