在终端完成某个命令后继续
本文关键字:命令 继续 终端 | 更新日期: 2023-09-27 18:12:18
我需要问一个在网上找不到的问题。我在c#应用程序中使用进程打开cmd ..我需要传递一些命令,但在每个命令之后,我需要确保这个命令完成,以便我可以继续其他命令!这怎么可能,系统诊断…这是我的代码,我尝试…
var startInfo = new ProcessStartInfo
{
FileName = "cmd.exe",
RedirectStandardInput = true,
RedirectStandardOutput = true,
UseShellExecute = false,
CreateNoWindow = false,
WorkingDirectory = @"E:/Visual Studio 2013/" + project_Name + "/packages/NUnit.ConsoleRunner.3.4.1/tools"
};
var process = new Process { StartInfo = startInfo };
process.Start();
process.StandardInput.WriteLine("nunit3-console.exe E:/Debug/Report_Testing.dll");
process.WaitForExit();
wait for exit在这里无限挂起,我无法传递这行代码。这个问题的解决方案是什么?
尝试添加选项/c nunit3-console.exe E:/Debug/Report_Testing.dll
。
就像现在一样,它将运行cmd
,并且命令执行后提示符仍然有效。
WaitForExit
正在等待cmd
完成,它永远不会完成。我已经设法得到了解决方案:
我把它添加到我的writeline命令中,改成这样:
process.StandardInput.WriteLine("nunit3-console.exe E:/Debug/Report_Testing.dll" + "&" +"exit");
//然后使用wait for exit
process.WaitForExit ();