如何在终端中运行命令并捕获输出

时间:2012-09-12 13:07:57

标签: c# linux monodevelop

我正在使用MonoDevelop中的Ubuntu处理申请。通过这个应用程序,我需要运行一个终端命令并捕获它的输出。这样的事可能吗?任何帮助/想法将不胜感激!

我的意思是,如果用户点击某个按钮,该命令将会运行并且输出将显示在文本框中。我不希望弹出一个终端窗口,这个动作应该完全在应用程序内完成。

1 个答案:

答案 0 :(得分:0)

在C#Windows中你可以这样做:

Process p = new Process(); // Redirect the output stream of the child process.
p.StartInfo.RedirectStandardOutput = true;
p.StartInfo.FileName = "program.exe"; 
p.Start();  // Do not wait for the child process to exit before reading to the end of its     redirected stream.
p.WaitForExit(); // Read the output stream first and then wait.
string output = p.StandardOutput.ReadToEnd();
p.WaitForExit();