在实际开发中,尤其是在开发相关工具的时候,常常会用到系统命令行工具cmd来在后台执行一些命令。执行命令行的方法有两种,一种是带有返回值的,另一种是不带返回值的。相关方法如下。
带返回值的方法:
//执行带返回值的cmd指令方法
string ExecuteCMDWithOutput(string command)
{
ProcessStartInfo processInfo = new ProcessStartInfo("cmd.exe", "/S /C " + command)
{
CreateNoWindow = true,
UseShellExecute = false,
WindowStyle = ProcessWindowStyle.Hidden,
RedirectStandardOutput = true
};
Process process = new Process {StartInfo = processInfo};
process.Start();
string outpup = process.StandardOutput.ReadToEnd();
process.WaitForExit();
return outpup;
}
不带返回值的方法:
//执行不带返回值的cmd指令方法
void ExecuteCMDMath(string command)
{
ProcessStartInfo processInfo = new ProcessStartInfo("cmd.exe", "/S /C " + command)
{
CreateNoWindow = true,
UseShellExecute = true,
WindowStyle = ProcessWindowStyle.Hidden
};
Process.Start(processInfo);
}