Windows远程执行代码
最近研究了一下Windows如何像Linux那样多用户同时远程执行命令,发现了有好几种方法可以实现,今天介绍其中一种Wmic。
wmic是Windows的WMI的一部分,它提供了远程管理功能,可以通过 wmic 命令在远程计算机上执行命令。wmic远程执行命令是无回显的,执行结果并不会返回到当前计算机。
要在远程计算机上执行 wmic 命令,需要使用 /node 选项指定远程计算机的名称或 IP 地址,使用 /user 和 /password 选项指定凭据。使用process call create语句在远程计算机上创建一个进程
例如:查询远程计算机的网络信息并将结果保存到c盘的ip.txt
1 | wmic /node:ComputerIP /user:admin /password:Password process call create "cmd /c ipconfig>c:\ip.txt" |
例如远程更新补丁,远程卸载安装软件等操作。
更新Windows补丁:
1 | wmic /node:ComputerIP /user:admin /password:Password process call create "wusa windowsMSUpath /quit /norestart" |
通过这个远程执行命令的特性,我们可以将要在远程的计算机上编写好bat脚本来执行更加复杂的操作。
远程执行c盘下a.bat脚本
1 | wmic /node:ComputerIP /user:admin /password:Password process call create "cmd /c c:\a.bat" |
当我们要在多台电脑上执行同一个脚本时可以编写一个bat脚本循环读取多台电脑的ip执行远程代码
1 | @echo off |
下面写一个应用实例,批量更新Windows,先使用xcopy将文件拷贝到目标计算机,然后使用wmic发送命令,使用dims更新Windows映像。
1 | @echo off |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 李志杰&blog!
评论







