C#控制台应用中无法执行CMD命令问题求助
解决C#调用CMD不执行命令的问题
哦,这个坑我之前踩过!你代码里的问题其实出在给CMD传递参数的方式上——直接传echo testing的话,CMD启动后并不会执行这条命令,只会打开一个空窗口,自然看不到输出啦。
为什么会这样?
CMD需要特定的参数来明确它的执行逻辑:
- 使用
/c参数:执行指定命令后自动关闭CMD窗口 - 使用
/k参数:执行指定命令后保持CMD窗口打开(方便你查看输出结果)
修改后的代码
试试把代码改成这样:
class Program { static void Main(string[] args) { // 用/c执行命令后退出,也可以换成/k让窗口保持打开 Process.Start("cmd", "/c echo testing"); Console.ReadKey(); } }
如果你想让CMD窗口一直开着看结果,就把/c换成/k,这样执行完echo testing后窗口不会自动关闭,你能清楚看到输出的内容。
另外,如果之后你需要把CMD的输出捕获到自己的C#程序里(而不是弹出CMD窗口),可以配置ProcessStartInfo的相关属性,比如重定向标准输出,但那是另一种使用场景啦。
内容的提问来源于stack exchange,提问作者Chris
相关产品推荐
相关产品推荐

