自定义命令行工具——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框的关闭,我甚至想到了递归,哈哈,尴尬了。