zoukankan      html  css  js  c++  java
  • 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

  • 相关阅读:
    LoadRunner测试结果分析
    安装LoadRunner时提示缺少vc2005_sp1_with_atl_fix_redist解决方案
    LoadRunner 11 安装及破解
    android批量文件上传(android批量图片上传)
    nginx优化配置
    redis节点管理-节点的移除
    jQuery获取表格隐藏域与ajax请求数据结合显示详情
    el表达式运算符
    EL表达式中获取list长度(JSTL函数用法)
    SQL之case when then用法(用于分类统计)
  • 原文地址:https://www.cnblogs.com/wa502/p/14790902.html
Copyright © 2011-2022 走看看