当前PS脚本:
Invoke-Command -ComputerName RemoteServer007.FQDN.com -ScriptBlock {
Set-Variable -Name WOWCONFIG -value "d:\ABCs\WOWzers" `
| Start-Process "d:\da-folder\Do-It-NOW-Pleez.cmd"
}
如果我本地登录到服务器(RemoteServer007.FQDN.com)并执行cmd文件,它将运行cmd文件中的所有行(命令)。
当我远程执行它时,它通过cmd文件中的命令大约有30%的时间,PS执行结束而没有错误,但并未执行cmd文件中的所有行/命令。
通过简单地配置cmd文件的每一行以输出到txt文件来发现这一点。 我甚至尝试重新调整cmd文件中的命令,认为可能有一个特定的命令导致它退出,但事实并非如此。
我想知道PowerShell没有得到一些超时或响应吗?刚开始后几乎立即戒烟?
非常感谢任何想法或帮助。
答案 0 :(得分:0)
你可以在这里做几件事:
您可能遇到内存问题。增加MaxMemoryPerShellMB的值可能会有所帮助
set-item WSMan:\ $ target \ Shell \ MaxMemoryPerShellMB -Value 0 -Force
在再次执行命令之前,您需要在远程计算机上运行一次。
您还可以在Windows事件查看器中查看可能的错误日志。您应该查看powershell和Windows远程管理的类别。
最后,您可以使用任务计划程序异步运行此过程。我在过去遇到过与Windows类似的问题,并且在PowerShell会话之外从任务调度程序运行该进程修复了它。我们在Cloudify中执行此操作的示例如下: https://github.com/CloudifySource/cloudify/blob/master/esc/src/main/resources/clouds/ec2-win/upload/bootstrap-management.ps1#L220