• C# CMD直接运行语句


    #region CMD直接运行语句,不适用所有服务器
    bool result = false;
    try
    {
    using (Process process = new Process())创建进程对象
    {
    string strInput = Console.ReadLine();
    Process p = new Process();
    设置要启动的应用程序
    p.StartInfo.FileName = "cmd.exe";
    是否使用操作系统shell启动
    p.StartInfo.UseShellExecute = false;
    接受来自调用程序的输入信息
    p.StartInfo.RedirectStandardInput = true;
    输出信息
    p.StartInfo.RedirectStandardOutput = false;
    不显示程序窗口
    p.StartInfo.CreateNoWindow = true;
    输出错误
    p.StartInfo.RedirectStandardError = false;
    启动程序
    p.Start();

    进入文件夹中
    string stmp = Assembly.GetExecutingAssembly().Location;
    stmp = stmp.Substring(0, stmp.LastIndexOf('\'));删除文件名
    向cmd窗口发送输入信息
    string cmd0 = $"@echo off &cd {stmp} &{appSetting.BackupPath.Substring(0,1)}:";
    string cmd1 = $"SET BackaupFolder={appSetting.BackupPath}SQL";
    string cmd2 = "if not exist %BackaupFolder% ( md %BackaupFolder% )";
    string cmd3 = $"mysqldump -hlocalhost -uroot -proot@123 mis expresspackage downpackage > {appSetting.BackupPath}SQL\wcsop_{DateTime.Now.ToString("yyyyMMdd")}.sql "+"&exit";
    p.StandardInput.WriteLine(cmd0 + Environment.NewLine);
    p.StandardInput.WriteLine(cmd1 + Environment.NewLine);
    p.StandardInput.WriteLine(cmd2 + Environment.NewLine);
    p.StandardInput.WriteLine(cmd3);
    p.StandardInput.AutoFlush = true;

    Logger<DataClassDal>.Debug("BackupOpTable ,cmd0:"+ cmd0);
    Logger<DataClassDal>.Debug("BackupOpTable ,cmd1:" + cmd1);
    Logger<DataClassDal>.Debug("BackupOpTable ,cmd2:" + cmd2);
    Logger<DataClassDal>.Debug("BackupOpTable ,cmd3:" + cmd3);

    获取输出信息
    string strOuput = p.StandardOutput.ReadToEnd();
    等待程序执行完退出进程
    p.WaitForExit();
    p.Close();

    result = true;
    Logger<DataClassDal>.Debug("BackupOpTable True");
    }
    }
    catch (Exception ex)
    {
    Logger<DataClassDal>.Error("BackupOpTable Error:", ex);
    }
    return result;
    #endregion

  • 相关阅读:
    bigint int smallint tinyint 我是个马大哈
    [转载]Jquery主要控件的取值、赋值,包括textbox,butt
    几个时间转化格式
    Linq 事务问题
    手机网页开发
    PM2.5口罩网上热销 防护作用有限“噱头”多
    按F5键刷新造成的数据重复提交
    Ajax中遇到的一点细节问题
    WCF(二)将WCF发布到WindowsService
    WCF(一)
  • 原文地址:https://www.cnblogs.com/wa502/p/14790902.html
Copyright © 2020-2023  润新知