有没有办法从powershell脚本在新的命令行窗口中启动命令行进程?

时间:2014-10-20 12:42:01

标签: powershell powershell-v3.0

我正在使用

Start-Process "<PathToFile>.bat"

对于Powershell(v3)中冗长脚本中的.bat文件。但是,命令行窗口弹出片刻并立即关闭,通常在命令行上运行的进程在后台运行,没有任何指示已完成或发生任何错误。

有没有办法强制命令窗口保持打开状态,直到用户退出窗口(运行.bat之后)?我想即使有一种命令窗口保持打开的方式,PS脚本将继续在后台运行?

2 个答案:

答案 0 :(得分:0)

如Alex K所说,CMD / K打开一个CMD窗口然后保持打开状态。

如果您使用CMD / C,它将调用该文件,运行命令/进程然后退出。

答案 1 :(得分:0)

可悲的是,cmd / c对我来说无效。因为我还需要将参数传递给从命令行调用的程序,所以我选择编写一个临时代理bat来保存对程序和参数的调用。

伪代码:

"ProgramName /Parameters" | Out-File DirOfTempBatFile -Encoding ascii
$output = Start-Process DirOfTempBatFile -wait

这会调用程序(带参数的sqlplus)并保持命令窗口打开。此外,您可以通过$ output。

访问sqlplus调试消息的输出