我有这个简单的代码,可以通过PowerShell远程执行.bat文件。

Invoke-Command -ComputerName  servername -Credential $credential -ScriptBlock {
  Start-Process "\\servername\D$\LocalApp\application\script.bat"
}

该脚本工作正常。唯一的问题是,我需要能够在CMD窗口执行时看到其输出。

最佳答案

使用调用运算符(&)代替Start-Process:

Invoke-Command -ComputerName  servername -Credential $credential -ScriptBlock {
  & '\\servername\D$\LocalApp\application\script.bat'
}

或使用参数Start-Process-NoNewWindow运行-Wait:
Invoke-Command -ComputerName  servername -Credential $credential -ScriptBlock {
  Start-Process '\\servername\D$\LocalApp\application\script.bat' -NoNewWindow -Wait
}

关于powershell - 从远程命令调用获取输出,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/34607454/

10-10 23:31