方便处理hosts的批处理脚本:hosts助手.bat
hosts助手.bat
@echo off
pushd "%~dp0"
set sp0=------------------
set sp1=hosts助手
set hostsfile="%SYSTEMROOT%\System32\Drivers\etc\hosts"
set getadminfile="%temp%\getadmin.vbs"
title %sp1%
color 5f
:: -=UAC功能开始=-
echo.
echo 正在启动,请稍后...
attrib %hostsfile% | find "找不到" >nul 2>nul
if %errorlevel%==0 goto patherror
"%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\SYSTEM" >nul 2>nul
rem "%SYSTEMROOT%\system32\cacls.exe" "%SYSTEMROOT%\system32\config\SYSTEM"
rem echo ERRORLEVEL:%errorlevel%
if %errorlevel%==0 (
goto Administrator
) else (
if %errorlevel%==2 (
goto patherror
) else (
goto UAC
)
)
:patherror
cls
echo 暂不支持从第三方软件启动,请手动运行。
echo.
echo 按任意键打开"%~n0%~x0"所在文件夹...
pause >nul
start "" explorer.exe /select,"%~f0"
goto end
:UAC
echo Set sh = CreateObject^("Shell.Application"^) > %getadminfile%
echo sh.ShellExecute "%~f0", "", "", "runas", 1 >> %getadminfile%
ping 127.1 -n 1 >nul
%getadminfile%
goto end
:Administrator
if exist %getadminfile% ( del %getadminfile% )
:: -=UAC功能结束=-
:mainmenu
cls
echo %sp0%
echo %sp1%
echo %sp0%
echo 1. 配置hosts文件的所有者(首次使用,请选择此项)
echo 2. 禁止修改hosts 3. 允许修改hosts
echo 4. 查看hosts文件 5. 打开hosts所在文件夹
echo 6. 显示隐藏文件 7. 不显示隐藏文件
echo.
echo Q. 退出
echo.
set input=
set /p input=请选择(直接回车:编辑hosts):
if "%input%"=="" goto :modifyhosts
if "%input%"=="1" goto :configowner
if "%input%"=="2" goto :disablemodify
if "%input%"=="3" goto :enabledmodify
if "%input%"=="4" goto :showhosts
if "%input%"=="5" goto :explorehosts
if "%input%"=="6" goto :showhidden
if "%input%"=="7" goto :noshowhidden
if "%input%"=="Q" goto :end
if "%input%"=="q" goto :end
echo.
echo 输入错误,请重新输入!
ping 127.1 -n 2 >nul
goto :mainmenu
:configowner
cls
echo 配置hosts文件的所有者
echo.
echo 请执行下面步骤:
echo.
echo 1) 右键hosts文件,点击“属性”菜单命令
echo 2) 在属性对话框里,选择“安全”选项卡,点下方的“高级”按钮
echo 3) 在出现的新窗口里,点击第二行“所有者”右边蓝色的“更改”文本链接
echo 4) 在“选择用户或组”对话框下面的文本框里输入“administrators”,点“确定”
echo 5) 回到其他窗口里,继续点“确定”完成配置
echo.
echo 提示:若看不见hosts文件,请选择主菜单的“6.显示隐藏文件”,然后刷新文件夹。
ping 127.1 -n 2 >nul
start "" explorer.exe /select,%hostsfile%
echo.
echo 按任意键键返回主菜单...
pause>nul
goto :mainmenu
:disablemodify
cls
echo 禁止修改hosts
echo.
attrib +r +a +s +h %hostsfile% | find "拒绝访问" >nul 2>nul
if %errorlevel%==0 (
echo 拒绝访问。
echo 如果未设置过hosts文件的所有权,请返回主菜单执行第1项。
) else (
echo y|cacls %hostsfile% /g everyone:r >nul 2>nul
if not errorlevel 1 (
echo 配置成功。
) else (
echo 配置失败!
)
)
echo.
echo 按任意键键返回主菜单...
pause>nul
goto :mainmenu
:enabledmodify
cls
echo 允许修改hosts
echo.
echo y|cacls %hostsfile% /g everyone:f >nul 2>nul
attrib -r -a -s -h %hostsfile% | find /i "拒绝访问" >nul 2>nul
if %errorlevel%==0 (
echo 配置失败!
echo 请回到主菜单执行第1项!
) else (
echo 配置成功。
)
echo.
echo 按任意键键返回主菜单...
pause>nul
goto :mainmenu
:modifyhosts
cls
echo 编辑hosts
echo.
echo * 允许修改hosts
echo y|cacls %hostsfile% /g everyone:f >nul 2>nul
attrib -r -a -s -h %hostsfile% >nul 2>nul
if exist %hostsfile% (
echo * 启动记事本
notepad.exe %hostsfile%
ping 127.1 -n 1 >nul
echo * 禁止修改hosts
attrib +r +a +s +h %hostsfile% >nul 2>nul
echo y|cacls %hostsfile% /g everyone:r >nul 2>nul
) else (
echo 无法配置hosts文件,请返回主菜单执行第1项!
)
echo.
echo 按任意键键返回主菜单...
pause>nul
goto :mainmenu
:showhosts
cls
echo 正在打开hosts...
start "" notepad.exe %hostsfile%
ping 127.1 -n 2 >nul
goto :mainmenu
:explorehosts
cls
echo 打开hosts所在文件夹
start "" explorer.exe /select,%hostsfile%
echo.
echo 提示:若看不见hosts文件,请选择主菜单的“6.显示隐藏文件”,然后刷新文件夹。
echo.
echo 按任意键键返回主菜单...
pause>nul
goto :mainmenu
:showhidden
cls
echo 配置为 显示隐藏文件...
reg add HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced /v ShowSuperHidden /t REG_DWORD /d 1 /f >nul
reg add HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced /v Hidden /t REG_DWORD /d 1 /f >nul
ping 127.1 -n 2 >nul
goto :mainmenu
:noshowhidden
cls
echo 配置为 不显示隐藏文件...
reg add HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced /v ShowSuperHidden /t REG_DWORD /d 0 /f >nul
reg add HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced /v Hidden /t REG_DWORD /d 2 /f >nul
ping 127.1 -n 2 >nul
goto :mainmenu
:end
if exist %getadminfile% ( del %getadminfile% )
color
title %ComSpec%
popd
exit /B
操作提示:
- 第一次使用,请选择1,按照提示对hosts文件进行权限配置。然后,选择2,禁止任何人修改hosts文件。
- 手动编辑hosts:运行脚本,在输入提示中直接按回车键,会出现记事本,编辑完成保存退出,助手会自动配置为禁止任何人修改hosts文件。
- 临时允许其他软件修改hosts:运行脚本,选择3。记得最后重新选择2,禁止任何人修改hosts文件。
- 由于脚本中使用的Find命令,所以仅支持中文系统。
附:一些hosts
#mozilla
117.18.232.191 addons.cdn.mozilla.net
117.18.232.191 mozorg.cdn.mozilla.net
117.18.232.191 developer.cdn.mozilla.net
117.18.232.191 fhr.cdn.mozilla.net
117.18.232.191 support.cdn.mozilla.net
117.18.232.191 marketplace.cdn.mozilla.net
117.18.232.191 air.cdn.mozilla.net
117.18.232.191 activations.cdn.mozilla.net
117.18.232.191 cdn.mozilla.net
117.18.232.191 download-installer.cdn.mozilla.net
117.18.237.191 getpersonas-cdn.mozilla.net
117.18.232.191 snippets.cdn.mozilla.net
117.18.232.191 telemetry-experiment.cdn.mozilla.net
117.18.232.191 code.cdn.mozilla.net
117.18.232.191 videos.cdn.mozilla.net
117.18.232.191 glow.cdn.mozilla.net
72.21.81.109 df6a.https.cdn.softlayer.net
117.18.237.29 ocsp.digicert.com
#mozilla #qq
0.0.0.0 ad.qq.com
0.0.0.0 adping.qq.com
0.0.0.0 adsclick.qq.com
0.0.0.0 adsfile.qq.com
0.0.0.0 adshmct.qq.com
0.0.0.0 adshmmsg.qq.com
0.0.0.0 adslvfile.qq.com
0.0.0.0 adslvseed.qq.com
0.0.0.0 adsqqclick.qq.com
0.0.0.0 adsrich.qq.com
0.0.0.0 c.l.qq.com
0.0.0.0 jingjia.qq.com
0.0.0.0 pingfore.qq.com
0.0.0.0 rich.qq.com
0.0.0.0 union.qq.com
0.0.0.0 w.l.qq.com
0.0.0.0 adshmct.qq.com
0.0.0.0 q.i.gdt.qq.com
0.0.0.0 v.gdt.qq.com
0.0.0.0 fodder.qq.com
0.0.0.0 adshmct.qq.com
0.0.0.0 hm.l.qq.com
0.0.0.0 adshmmsg.qq.com
方便处理hosts的批处理脚本:hosts助手.bat的更多相关文章
- 写个批处理脚本来帮忙干活--遍历文件夹&字符串处理
这次打算写几篇关于脚本方面的博客,主要是记录一下 Gradle 脚本和批处理脚本的一些写法,方便后续查阅. 前言 平常开发过程中,一些较为重复的手工性工作,如果能让脚本来帮忙处理,自然是最好的,刚好之 ...
- EasyNVR摄像机H5流媒体服务器在windows上批处理脚本自动以管理员权限运行
很多时候, 我们需要以管理员权限来运行批处理脚本, 比如操作 windows 服务. EasyNVR 中提供安装服务的批处理脚本, 运行这个bat文件, 自动将 EasyNVR 以 windows 服 ...
- Windows注册表中修改UAC(用户账号控制)及批处理脚本
注册表路径: HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/Windows/CurrentVersion/Policies/System 键说明: ConsentProm ...
- 批处理脚本修改hosts文件指定域名解析IP
现在很多网站都是前后台分开部署的,这样做是相对安全的.就算黑客拿到了前台shell也找不到后台的管理地址,增加安全性. 大家应该知道hosts文件的功能吧,用户在访问网站的时候 需要把域名解析成IP地 ...
- 〖Linux〗实时更新 hosts 文件的脚本
适用场景: 下载了一个smarthosts的hosts文件,但hosts文件过旧导致一些ip地址已失效无法访问网络. 脚本使用: ./hostsupdate # 直接从 /etc/hosts 中获得需 ...
- Android测试提升效率批处理脚本(二)
前言: 前面放出过一次批处理,本次再放出一些比较有用的批处理(获得当前包名.查看APP签名信息等),好长时没来写博客了,简单化,请看正文,更多脚本尽请期待~~~(不定期) 目录 1.[手机录屏(安卓4 ...
- 01_安装电脑软件的步骤批处理脚本.bat
REM 01_安装电脑软件的步骤批处理脚本.bat MD 01_安装电脑软件的步骤 REM ZIP解压密码空格MD 02_制作杏雨梨云USB维护系统2019中秋版之国庆更新固态U盘MD 03_复制安装 ...
- Android测试提升效率批处理脚本(三)
前言: 前面放出过几次批处理,这次只放一个环境检查的被管理员给打回来了,不得不再找找几个有含金量的放出来,请看正文~~~ 目录 1.Android环境检查 2.Android内存监控 3.模拟蓝牙手柄 ...
- 【转】BAT 批处理脚本 教程
第一章 批处理基础第一节 常用批处理内部命令简介批处理定义:顾名思义,批处理文件是将一系列命令按一定的顺序集合为一个可执行的文本文件,其扩展名为BAT或者CMD.这些命令统称批处理命令.小知识:可以在 ...
随机推荐
- stopPropagation(), preventDefault() , return false 事件
因为有父, 子节点同在, 因为有监听事件和浏览器默认动作之分. 使用 JavaScript 时为了达到预期效果经常需要阻止事件和动作执行. 一般我们会用到三种方法, 分别是 stopPropagati ...
- Eclipse 介绍
设置背景的插件: Darkest Dark Theme 添加 properties 插件: Properties Editor Git 插件: Egit 常用快捷键 command + 1 : 代码提 ...
- sql server迁移数据(文件组之间的互相迁移与 文件组内文件的互相迁移)
转自:https://www.cnblogs.com/lyhabc/p/3504380.html?utm_source=tuicool SQLSERVER将数据移到另一个文件组之后清空文件组并删除文件 ...
- CoreThink开发(十一)首页控制器判断移动设备还是PC并做相应处理
在home模块Index控制器添加判断代码 application\Home\Controller\IndexController.class.php <?php // +----------- ...
- JSP使用网站访问人数统计功能,方法与技巧
实现网站访问人数统计功能的步骤: 创建静态登录页面,并指定表单提交由登录处理页面进行处理. 创建登录处理页面获得登录信息,查询数据库,判断该用户是否注册,如果该用户已注册,把已登录用户的信息保存在一个 ...
- [设计模式]State模式
<Java与模式> 又称状态对象模式.状态模式是对象的行为模式.GOF95 一个对象的行为取决于一个或者多个动态变化的属性,这样的属性叫做状态.这样的对象叫做有状态的对象(stateful ...
- 如何实现关系表的级联删除(ON DELETE CASCADE的用法)
以下面两张表为例: SQL> desc person 名称 是否为空? 类型 --------------------- ...
- effective C++ 条款25 swap
item 25:一个不抛异常的swap函数 标准库有一个swap用于交换两个对象值 namespace std{ template<typename T> void swap(T& ...
- 终端创建scrapy项目时报错(转)
在终端创建scrapy项目时报错 PS D:\scrapy_project> scrapy startproject fangFatal error in launcher: Unable to ...
- MySQL-Last_Errno: 1594
故障现象 :MySQL slave所在机器自动重启,启动MySQL后,查看主从信息如下: Error_code: 1594 mysql> show slave status \G . ro ...