Windows · 13 3 月, 2022 0

PowerShell中创建后台进程实现一窗多开

在Shell或者Linux命令行中,如果想用一个终端窗口同时运行多个命令,可以很方便地在命令的最后加上&。那么如何在PowerShell里实现相同目的呢?

原理及实现

PowerShell的后台功能是靠Start-Process命令实现的。以下为使用例:

# 启动一个进程
Start-Process -NoNewWindow ping www.baidu.com

# 启动一个带参数的进程
# (参数不可以直接写在“-NoNewWindow”的后面)
Start-Process -NoNewWindow ping -ArgumentList '-n 10 www.baidu.com'

以上命令可以在同一个PowerShell同时执行多个,达到后台进程的效果。

高级一点的用法

可以将Start-Process封装成函数,简化命令。

function bg() {Start-Process -NoNewWindow @args}
bg ping -ArgumentList '-n 10 www.baidu.com'

关于Start-Process的更多用法,请参考官方文档