cmd执行命令
1 Process cmdProcess = new Process();
2 cmdProcess.StartInfo.FileName = "cmd.exe";
3
4 cmdProcess.StartInfo.CreateNoWindow = true; // 不创建新窗口
5 cmdProcess.StartInfo.UseShellExecute = false; //不启用shell启动进程
6 cmdProcess.StartInfo.RedirectStandardInput = true; // 重定向输入
7 cmdProcess.StartInfo.RedirectStandardOutput = true; // 重定向标准输出
8 cmdProcess.StartInfo.RedirectStandardError = true; // 重定向错误输出
9 cmdProcess.StartInfo.CreateNoWindow = true; //不显示程序窗口
10
11 cmdProcess.Start();
12
13 //CmdProcess.StartInfo.Arguments = "/c " + strInput;
14 cmdProcess.StandardInput.WriteLine(strInput + "&exit");
15 cmdProcess.StandardInput.AutoFlush = true;
16
17 string result = cmdProcess.StandardOutput.ReadToEnd();
18
19 //等待程序执行完退出进程
20 cmdProcess.WaitForExit();
21 cmdProcess.Close();
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
- 15.
- 16.
- 17.
- 18.
- 19.
- 20.
- 21.
也可以使用参数注入,执行cmd
1 Process cmdProcess = new Process();
2 cmdProcess.StartInfo.FileName = "cmd.exe";
3
4 cmdProcess.StartInfo.CreateNoWindow = true; // 不创建新窗口
5 cmdProcess.StartInfo.UseShellExecute = false; //不启用shell启动进程
6 cmdProcess.StartInfo.RedirectStandardInput = true; // 重定向输入
7 cmdProcess.StartInfo.RedirectStandardOutput = true; // 重定向标准输出
8 cmdProcess.StartInfo.RedirectStandardError = true; // 重定向错误输出
9
10 cmdProcess.StartInfo.Arguments = "/c " + cmd;
11 cmdProcess.Start();
12 string result = cmdProcess.StandardOutput.ReadToEnd();
13 result = result.Trim();
14
15 //等待程序执行完退出进程
16 cmdProcess.WaitForExit();
17 cmdProcess.Close();
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
- 15.
- 16.
- 17.
作者:唐宋元明清2188