我使用这样的命令从 ServerA 在 ServerB 和 ServerC 上远程创建了一个任务。
SCHTASKS.exe /Create /S server /RU domain\user /RP "password" /SC ONCE /TN task /TR D:\scripts\script.cmd /ST 00:00
我可以使用这样的命令在 serverB 上远程运行它。
SCHTASKS.EXE /RUN /S serverB /I /TN \task
但是当我使用相同的命令在 serverC 上运行它时,我得到了ERROR: The request is not supported.
我可以查询它并删除它,然后从 ServerA 在 ServerC 上重新创建它,但我无法运行它。
我可以 RDP 进入 ServerC 并在本地运行它。
我使用的域帐户是所有三台服务器上的管理员成员。
所有 3 台服务器都是 Windows Server 2016 Datacenter [版本 10.0.14393]。
所有 3 台服务器都具有相同版本的SCHTASKS.EXE
[Version 6.2.14393.0]。
我远程运行脚本的其他方式:
我以前用过PSEXEC.EXE
,它是最可靠和最一致的,但在我公司被禁止使用。
我曾尝试使用 Powershell 和 WinRS,但我得到的结果不一致,例如使用 SCHTASKS。
在 serverC 上检查:
请注意,您也可以使用以下命令:
我最终从命令中删除了 /I 参数,并开始获得一致的结果。到目前为止,它已经在十几台服务器上成功运行了该任务。