//通过这段代码,我想要将要执行的批处理文件显示在shell屏幕上的输出,我得到的是 RedirectStandardOutput = false;
但我也希望同时输出应重定向到日志文件,我必须这样做 RedirectStandardOutput = true;
但是一旦可以使用 true 或 false ,请帮助我伟大的程序员...... !!
System.Diagnostics.Process p = new System.Diagnostics.Process();
p.StartInfo.FileName = "c:\test\build.bat";
p.StartInfo.UseShellExecute = false;
p.StartInfo.RedirectStandardOutput = true;
p.Start();
string output = null;
// try
// {
output = p.StandardOutput.ReadToEnd();
// }
// catch (Exception ex)
// {
// MessageBox.Show(ex.ToString());
// }
System.IO.File.WriteAllText("c:\test\log.txt", output);
答案 0 :(得分:1)
您可以将从p.StandardOutput
收到的输出写入Console.Write
要查看实时显示的输出,请使用ReadToEnd
的循环调用替换单个ReadLine
来电。