如何在PowerShell中启动带多参数的CMD进程?
解决方法
你遇到的问题根源在于CMD的/K参数只能使用一次——它的作用是执行后续命令串后保持窗口打开。要实现多命令执行,需把多个CMD命令用CMD自带的分隔符拼接成一个字符串,放在同一个/K的参数范围内。
正确命令示例
方式1:用&分隔命令(顺序执行,不受前序命令结果影响)
Start-Process cmd -ArgumentList '/K "title test & ping 192.168.1.1"'
方式2:用&&分隔命令(仅前序命令执行成功时,才运行后续命令)
Start-Process cmd -ArgumentList '/K "title test && ping 192.168.1.1"'
方式3:用;分隔命令(CMD同样支持分号作为命令分隔符)
Start-Process cmd -ArgumentList '/K "title test; ping 192.168.1.1"'
补充说明
- 若希望
ping执行完成后自动关闭CMD窗口,只需把/K替换为/C即可。 - 所有命令必须包裹在同一个
/K(或/C)后的引号内,CMD才能正确解析完整的命令串。
内容的提问来源于stack exchange,提问作者Aaron
相关产品推荐
相关产品推荐

