我正在开发一个使用MonoDevelop
in的应用程序Ubuntu
。通过这个应用程序,我需要运行一个终端命令并捕获它的输出。这样的事情可能吗?任何帮助/想法将不胜感激!
我的意思是,如果用户单击一个按钮,该命令将运行,输出将显示在文本框或其他内容中。我不想弹出终端窗口,这个动作应该完全在应用程序内部完成。
我正在开发一个使用MonoDevelop
in的应用程序Ubuntu
。通过这个应用程序,我需要运行一个终端命令并捕获它的输出。这样的事情可能吗?任何帮助/想法将不胜感激!
我的意思是,如果用户单击一个按钮,该命令将运行,输出将显示在文本框或其他内容中。我不想弹出终端窗口,这个动作应该完全在应用程序内部完成。
在 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();