我想通过使用响应文件在多个服务器上运行基本命令,类似于如何ping多台服务器并返回它们的IP命令。 我可以从我的工作站运行命令,并返回所有的信息就好了。
schtasks /query /v /fo csv /nh >> \\my-pc\c$\temp\details_sched_tasks.csv
PSExec支持计算机名称或IP作为参数的文本列表。
例:
psexec /u domain\adminguy @computerlist.txt \\server\share\command_to_run.bat
可以使用dsquery将服务器移植到列表中,然后使用psexec在远程计算机上使用输出执行schtask。 它看起来像这样。
dsquery computer ou=serverOU,dc=microsoft,dc=com* -o rdn > list.txt FOR /F "tokens=1 delims=" %%a in ('type list.txt') DO psexec \\%%a schtasks /query /v /fo csv /nh >> \\my-pc\c$\temp\details_sched_tasks.csv
这个选项效果最好。
计划任务的详细视图
(server_list.txt)中的/ f%x do(schtasks / query / s%x / v / fo csv / nh >> d:\ sched d:\ sched_tasks.csv)