• C#执行DOS命令(CMD命令)


    在c#程序中,有时会用到调用cmd命令完成一些功能,于是在网上查到了如下方法,实现了
    c#执行DOS命令,并返回结果。

            //dosCommand Dos命令语句
            public string Execute(string dosCommand)
            {
                return Execute(dosCommand, 10);
            }
            /// <summary>
            /// 执行DOS命令,返回DOS命令的输出
            /// </summary>
            /// <param name="dosCommand">dos命令</param>
            /// <param name="milliseconds">等待命令执行的时间(单位:毫秒),
            /// 如果设定为0,则无限等待</param>
            /// <returns>返回DOS命令的输出</returns>
            public static string Execute(string command, int seconds)
            {
                string output = ""; //输出字符串
                if (command != null && !command.Equals(""))
                {
                    Process process = new Process();//创建进程对象
                    ProcessStartInfo startInfo = new ProcessStartInfo();
                    startInfo.FileName = "cmd.exe";//设定需要执行的命令
                    startInfo.Arguments = "/C " + command;//“/C”表示执行完命令后马上退出
                    startInfo.UseShellExecute = false;//不使用系统外壳程序启动
                    startInfo.RedirectStandardInput = false;//不重定向输入
                    startInfo.RedirectStandardOutput = true; //重定向输出
                    startInfo.CreateNoWindow = true;//不创建窗口
                    process.StartInfo = startInfo;
                    try
                    {
                        if (process.Start())//开始进程
                        {
                            if (seconds == 0)
                            {
                                process.WaitForExit();//这里无限等待进程结束
                            }
                            else
                            {
                                process.WaitForExit(seconds); //等待进程结束,等待时间为指定的毫秒
                            }
                            output = process.StandardOutput.ReadToEnd();//读取进程的输出
                        }
                    }
                    catch
                    {
                    }
                    finally
                    {
                        if (process != null)
                            process.Close();
                    }
                }
                return output;
            }
  • 相关阅读:
    git使用
    Git常用命令梳理
    git fetch 更新远程代码到本地仓库
    理解RESTful架构
    漫谈五种IO模型(主讲IO多路复用)
    python 单下划线/双下划线使用总结
    闰秒导致MySQL服务器的CPU sys过高
    闰秒问题
    Java线上应用故障排查之一:高CPU占用
    ZooKeeper安装与配置
  • 原文地址:https://www.cnblogs.com/mili3/p/4936765.html
Copyright © 2020-2023  润新知