如何从单个PS1文件同时在单独的窗口中运行多个进程?

时间:2016-12-19 15:21:27

标签: powershell windows-10

我问this question并让它发挥作用。作为一个懒惰的类型,我认为我也可以自动化启动过程。我得到了以下为我做的事情。

function GoToWorkApi{
  cd C:\Source\...\api
  git pull
  code .
  dotnet run
  dir
}

function GoToWorkWeb{
  cd C:\Source\...\web
  code .
  npm run dev
  dir
}

现在,我比这更懒,我试图通过Start-Process命令将这两个放在一个文件中。它似乎被卡住了#34;在 dotnet上运行部分。

function GoToWork{
  cd C:\Source\...\api
  git pull
  code .
  dotnet run

  cd C:\Source\...\web
  code .
  npm run dev
}

我感觉我需要打开一个新的PowerShell窗口并单独运行各个脚本,但我还没有控制它。我该怎么做?

Googlearching只引导我Azure related stuff,这是普通的桌面版。

1 个答案:

答案 0 :(得分:1)

您应该使用Start-Process cmdlet而不是dotnet run。 例如:

Start-Process -FilePath 'dotnet' -ArgumentList 'run'
...
Start-Process -FilePath 'npm' -ArgumentList 'run dev'
  

是否可以控制打开的窗口的颜色

不确定您是否可以通过PS控制它。我想到的只有:Start-Process -FilePath cmd.exe -ArgumentList '/k color 71 & your_command_here'