在某些特殊情况可能会遇到需要批量在Hosts文件添加记录的问题,其实这个问题比较好处理,直接在域控上创建一个开机启动脚本的组策略即可。脚本内容如下以添加 121.9.206.237 www.itlead.com.cn  记录为例:

@echo off
set stHosts=121.9.206.237 www.itlead.com.cn
FOR /F "eol=# tokens=1 delims=" %%i in (%SystemRoot%\system32\drivers\etc\hosts) do if "%stHosts%"=="%%i" exit
echo %stHosts%>> %SystemRoot%\system32\drivers\etc\hosts

只需将此脚本保存为.bat的批处理格式,然后创建组策略将此脚本添加为开机启动脚本即可,但是对于域内的XP客户端等都没问题,但是对于Win7客户端此脚本却不能执行成功,原因是因为Win7类客户端默认开启了UAC只需关闭UAC功能即可,如何批量关闭UAC功能呢?解决方法如下:

组策略关闭UAC方法如下:

1、 计算机配置 | Windows 设置 | 安全设置 | 本地策略| 安全选项
2、 按如下设置右侧的用户账户控制:
一、用户账户控制:检测应用程序安装并提示提升-禁用
二、用户账户控制:以管理员批准模式运行所有管理员-禁用
三、用户账户控制:管理员批准模式中的管理员的提示行为-不提示直接提升
以上两条组策略结合使用就可以完美的实现批量添加Hosts记录的问题。