我已经阅读了许多如何在远程PC上运行.bat文件的示例,我需要的是基于PowerShell invoke-command:
invoke-command -computername RemotePC -scriptblock {start-process c:\things\Thing.bat}
当我运行PowerShell系列时,它不会在远程PC上运行.bat文件并且不会返回错误。请帮忙。
我发现这有效:
invoke-command -computername RemotePC -scriptblock {& "c:\things\Thing.bat"}
Start-Process
不是用来启动脚本,而是用来启动进程,例如真正的exectuables。
你有一些选择(你已经发现了一个):
{. "C:\things\thing.bat"}
{& "C:\things\thing.bat"}
两个操作之间的差异(ref.: Source-Powershell-SS64):
点源在当前范围内运行函数或脚本。与将运行函数或脚本的调用运算符(&)不同,但它不会添加到当前作用域。