Powershell 在初始命令之后将命令发送到启动进程函数调用中

Powershell 在初始命令之后将命令发送到启动进程函数调用中,powershell,Powershell,我需要在PowerShell的命令提示符下运行以下命令,以便 /k“C:\Program Files(x86)\Windows工具包\10\Assessment and Deployment Kit\Deployment Tools\DandISetEnv.bat” copype amd64 C:\WinPE\u amd64\u PS 我可以通过以下PowerShell命令执行第一个命令: 启动进程-文件路径'C:\Windows\system32\cmd.exe'-ArgumentList'/

我需要在PowerShell的命令提示符下运行以下命令,以便

  • /k“C:\Program Files(x86)\Windows工具包\10\Assessment and Deployment Kit\Deployment Tools\DandISetEnv.bat”
  • copype amd64 C:\WinPE\u amd64\u PS
  • 我可以通过以下PowerShell命令执行第一个命令:

    启动进程-文件路径'C:\Windows\system32\cmd.exe'-ArgumentList'/k“C:\Program Files(x86)\Windows Kits\10\Assessment and Deployment Kit\Deployment Tools\DandISetEnv.bat”'
    
    这很好,但我无法将第二个命令传递到启动进程。我该怎么做呢?需要加载
    DandISetEnv.bat
    文件,并使用
    /k
    开关保持命令提示符打开


    是否可以在第一个命令和第二个命令之间设置开关或命令,或将下一个命令重定向到已启动的命令提示符进程中?

    由于您的目的是将多个命令传递给
    cmd
    ,因此需要使用其语句链接操作符
    来分隔这些命令:

    # Define the array of commands to pass to cmd.exe
    $cmdCommands = 
      '"C:\Program Files (x86)\Windows Kits\10\Assessment and Deployment Kit\Deployment Tools\DandISetEnv.bat"',
      'copype amd64 C:\WinPE_amd64_PS'
    
    Start-Process -FilePath cmd -ArgumentList ('/k ' + ($cmdCommands -join ' & '))
    

    请注意,如果您只想在前者成功的情况下执行后一个命令,则应使用
    &&
    而不是
    &

    很高兴听到它,@Danijel JamesW;我的荣幸。