自定义命令行工具——while(true) - 奔游浪子

时间:2024-04-17 22:12:55

自定义命令行工具——while(true)

看见同事启动应用程序的时候从来不是去双击快捷方式,于是乎,请教了一下,原来自己写了个工具,把应用程序的路径和对应的编号保存到文本文件里,通过输入编号来启动相应的程序,原理很简单,但是用工具去启动程序的确是很有快感,尤其是使用DOS框,对于我来说简直就是着迷,所以我也就写了一个这样的控制台工具。 但是我自己都没想到的就是,我居然突然间好像刚认识 while(true)一样,在某种情况下,它的强大可以让我不可思议,哈哈,夸张了,老铁! 废话不多说,我写博客就是不停的贴自己代码

class Program
    {
        static Dictionary<string, string> dic = new Dictionary<string, string>();
        static void Main(string[] args)
        {
            Init();
            while (true)
            {
                string cmdStr = Console.ReadLine();
                if (cmdStr.Contains("exist"))
                {
                    return;
                }
                else
                {
                    if (dic.Keys.Contains(cmdStr))
                    {
                        Process.Start(dic[cmdStr]);
                    }
                    else
                    {
                        Console.ForegroundColor = ConsoleColor.Red;
                        Console.WriteLine("\r\n                   不是有效的命令!请重试");
                    }
                }
            }
        }
        private static void Init()
        {
            View();
            Bind();
        }

        private static void Bind()
        {
            dic.Add("mongodb", @"F:\MongoDB\bin\mongo.exe");
            dic.Add("sql", @"C:\Program Files (x86)\Microsoft SQL Server\100\Tools\Binn\VSShell\Common7\IDE\Ssms.exe");
            dic.Add("vs", @"C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE\devenv.exe");
            dic.Add("fwq", @"C:\windows\system32\mstsc.exe");
            dic.Add("cmd", @"C:\windows\system32\cmd.exe");
            dic.Add("gg", @"C:\Users\sy\AppData\Local\Google\Chrome\Application\chrome.exe");
            dic.Add("xlxz", @"D:\迅雷\Program\Thunder.exe");
            dic.Add("xlkk", @"D:\迅雷看看\Xmp\V5.2.3.4996\Bin\XMP.exe");
            dic.Add("360", @"D:\360系列\浏览器\360se6\Application\360se.exe");
            dic.Add("qq", @"D:\QQ\Bin\QQ.exe");
            dic.Add("kg", @"D:\KGMusic\KuGou.exe");
            dic.Add("wx", @"D:\WeChat\WeChat.exe");
            dic.Add("bdy", @"D:\BaiduYunGuanjia\baidunetdisk.exe");
            dic.Add("jsb", @"C:\Windows\System32\notepad.exe");
            dic.Add("notepad", @"D:\Notepad++\notepad++.exe");
            dic.Add("ppt", @"D:\WPS Office\10.1.0.6206\office6\wpp.exe");
            dic.Add("excel", @"D:\WPS Office\10.1.0.6206\office6\et.exe");
            dic.Add("word", @"D:\WPS Office\10.1.0.6206\office6\wps.exe");
        }

        private static void View()
        {
            Console.BufferWidth = 220;
            Console.WindowHeight = 15;
            Console.Title = "CMD";
            Console.ForegroundColor = ConsoleColor.Green;
            Console.WriteLine("===================================================================================");
            Console.WriteLine("\r\n");
            Console.ForegroundColor = ConsoleColor.Yellow;
            Console.Write("                               我 TM 墙都不扶   ");
            Console.ForegroundColor = ConsoleColor.Red;
            Console.Write("舅服你");
            Console.WriteLine("\r\n\r\n");
            Console.ForegroundColor = ConsoleColor.Green;
            Console.WriteLine("===================================================================================");
        }
    }

虽然很简单,但是我觉得while(true)真的好厉害,可以阻止DOS框的关闭,想当时,为了阻止DOS框的关闭,我甚至想到了递归,哈哈,尴尬了。