C#使用系统cmd运行文件
时间: 2023-12-10 21:05:32 浏览: 93
用c#执行cmd命令
4星 · 用户满意度95%
在 C# 中,可以使用 `Process.Start` 方法来启动一个外部进程,包括启动系统的 cmd.exe 命令行工具。以下是一个简单的示例代码:
```csharp
using System.Diagnostics;
class Program {
static void Main(string[] args) {
// 要运行的命令
string command = "path/to/your/file.exe";
// 使用 Process.Start 方法启动 cmd.exe 进程,并传入命令
Process.Start("cmd.exe", "/c " + command);
}
}
```
需要注意的是,在启动 cmd.exe 进程时,需要使用 "/c" 参数来传递要执行的命令。另外,如果要传递多个参数,可以将它们拼接成一个字符串,使用空格分隔。
如果需要获取命令执行的结果,可以通过 Process 对象的 StandardOutput 属性来获取输出流,示例如下:
```csharp
using System.Diagnostics;
class Program {
static void Main(string[] args) {
// 要运行的命令
string command = "dir";
// 使用 Process.Start 方法启动 cmd.exe 进程,并传入命令
Process process = new Process();
process.StartInfo.FileName = "cmd.exe";
process.StartInfo.Arguments = "/c " + command;
process.StartInfo.UseShellExecute = false;
process.StartInfo.RedirectStandardOutput = true;
process.Start();
// 读取输出流
string output = process.StandardOutput.ReadToEnd();
// 等待进程结束
process.WaitForExit();
Console.WriteLine(output);
}
}
```
在这个示例中,使用 `RedirectStandardOutput` 属性来指定输出流要重定向到 Process 对象的 StandardOutput 属性中。然后通过 `ReadToEnd` 方法来读取输出流的内容,并在进程结束后输出到控制台。
阅读全文