最近碰到一个项目需要在50个windows虚拟机器上启动,停止一些命令,后来发现微软有个叫PsTools的工具可以很方便的做类似这种工作。比如:
PsInfo 查看远程机器系统信息
PsInfo.exe //<host1>,<host2>,...<hostN> -u <username> -p <password>
PsList 查看远程机器进程信息
PsList.exe //<host1> -u <username> -p <password>
PsKill 结束远程机器进程
PsKill.exe //<host> -u <username> -p <password> <process name | process id>
结束远程机器<host>上运行的IE
PsKill.exe //<host> -u <username> -p <password> iexplore
PsExec.exe 在远程机器上运行指定程序
在host1和host2上运行<cmd>命令
PsExec.exe //<host1>,<host2>,...<hostN> -u <username> -p <password> -w <work dir> <cmd>
在host1和host2上运行<cmd>命令,并且不等待程序运行结束直接推出
PsExec.exe //<host1>,<host2>,...<hostN> -u <username> -p <password> -d -w <work dir> <cmd>
PsTools里还有一些别的有用的工具,具体可以参考
http://technet.microsoft.com/en-us/sysinternals/bb896649