需要按Enter键才能完成psexec执行,无论如何要模拟?

时间:2015-07-16 19:07:07

标签: psexec

我们正在运行以下命令行

C:\Util\SysinternalsSuite\psexec \\10.120.36.219 -u localhost\w2k12edda -p A1b2C3d4 -h -w C:\Temp\WSOE C:\Temp\WSOE\postinstallphase1.cmd WSOE4R2 EMEA BASEL 1 rmavmorch33 10.120.36.219 255.255.255.192 10.120.36.193

postinstallphase1.cmd脚本包含一组暂时断开与目标服务器连接的命令。由于这些命令,psexec卡住了,获取命令提示符的唯一方法是在cmd控制台中按 enter

这对我们来说是个问题,因为我们打算在无人值守的解决方案中使用此命令。

我们也试过使用'-d'参数,但由于未知原因,如果我们使用此参数运行命令,cmd脚本的行为不会像预期的那样(没有-d)。

有没有办法模拟某人按下回车键?

2 个答案:

答案 0 :(得分:2)

根据: https://serverfault.com/questions/437504/why-does-psexec-hang-after-successfully-running-a-powershell-script

你可以通过像这样管道命令来解决这个问题:
psexec \\target -u domain\username -p password cmd /c "echo . | powershell c:\path\script.ps1"

答案 1 :(得分:0)

感谢您的帮助。

我使用此功能在PsExec套件Sysinternals的远程Windows服务器上安装Zabbix代理安装。

这是我的命令:

PsExec.exe @servers_list.txt
-accepteula
-n 5
-h
-u "Administrator"
cmd /c
"echo . | C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe
-ExecutionPolicy ByPass
-File \\share\public\zabbix_agent_install_windows.ps1"