当前位置: 首页 > 图文教程 > 脚本技术 > DOS/BAT > 原创批处理之网站屏蔽与解除屏蔽批处理

DOS/BAT
Compact 显示和更改 NTFS 分区上的文件或目录压缩
Del (erase) 删除指定文件
Convert 将 FAT 和 FAT32 卷转换为 NTFS
copy 将一个或多个文件从一个位置复制到其他位置
Country使 MS-DOS 子系统能使用国际时间、日期、货币、大小写转换和小数分隔符
format命令 参数说明
Xcopy 复制文件和目录,包括子目录。
一个命令行(批处理)延迟执行命令的语法
收集21个DOS常用命令
dos、bat批处理延时执行命令的两种方法
CMD下建立虚拟目录的方法
关于批处理中FOR语句的使用说明与学习技巧
以后经常需要知道CMD/DOS下符号的作用参考,正好发现了这篇
由一段批处理程序所引起的探讨感觉问题是有,不太准确
用bat和 reg实现关闭局域网共享
开通局域网共享(访问本机无需验证即可进入的bat和注册表文件
开通局域网共享(访问本机要填用户名和密码)的注册表和批处理
用注册表实现(仅供备用)硬盘各分区的默认共享:关闭
判断U盘已插入并自动COPY所有内容的批处理-U盘自动复制
用批处理列出所有开机启动项的命令

DOS/BAT 中的 原创批处理之网站屏蔽与解除屏蔽批处理


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-11   浏览: 94 ::
收藏到网摘: n/a

@echo off&color 0f&title 网址 屏蔽/解除屏蔽
:: by 小楼一夜听春雨
:loop
setlocal EnableDelayedExpansion
set wjm=C:\WINDOWS\system32\drivers\etc
set "str=127.0.0.1 "
set "xsxx=echo\&echo 注: 此操作需要经过杀毒软件的同意。"
set "xsxx=%xsxx%&echo ==================================&echo\"
cls&%xsxx%
echo\&echo 以下是已经被屏蔽的网址&echo ======================&echo\
for /f "tokens=1* delims= " %%a in (%wjm%\hosts) do (
if "%%a"=="127.0.0.1" set /a xs+=1
if !xs! geq 2 (
set /a num+=1
set !num!=%%b&echo ^(!num!^) %%b
)
set no=%%a %%b
)
echo\
if "%no%"=="127.0.0.1 localhost" (cls&%xsxx%&echo\&echo 目前没有被屏蔽的网址。
echo =====================&echo\&echo\&echo\&echo\)
if defined pinbi goto jiec
if defined pinbi3 goto quan
echo\&echo 请选择 1 屏蔽网址,2 解除屏蔽。3 全部解除屏蔽。&echo\
set /p xuan=请选择 [ 1,2,3 ] ?
if "%xuan%"=="2" (endlocal&set pinbi=a&goto loop)
if "%xuan%"=="3" (endlocal&set pinbi3=%num%&goto loop)
cls&%xsxx%
echo\&echo 请输入需要“屏蔽”的“单个”网址。
echo\&echo 或 先在“某文档”里输入所有要屏蔽的网址,一行一个。
echo\&echo 再在这里输入 “文档名” (含全路径和后缀名),可批量添加。
echo\&echo 按“回车键”或“点关闭按钮”退出。。。&echo\
set /p wdm=请输入文档名或网址:
if "%wdm%"=="" exit
if not exist %wdm% set wdm="%wdm%"
for /f "delims=" %%a in (%wdm%) do (
color cf&echo !str!%%a>>%wjm%\hosts
)
cls&echo\&echo 屏蔽成功。。。
endlocal&set pinbi=
goto loop
:jiec
echo\&echo 输入已经屏蔽的网址前面的序号,解除屏蔽相应的网址。
echo\&echo 解除屏蔽,可一次输入多个序号,用空格分开。如:1 2 5 10 (即:解除1、2、5、10)
echo\&echo 按“回车键”或“点关闭按钮”退出。。。&echo\
set /p wz=请输入序号:
if not defined wz exit
:quan
cd.>%wjm%\hosts1
color 1f
if defined pinbi3 for /l %%i in (1 1 %pinbi3%) do set wz=!wz! %%i
for /f "delims=" %%a in (%wjm%\hosts) do (
set pin=
for %%i in (%wz%) do if "%%a"=="!str!!%%i!" set pin=a
if not defined pin echo %%a>>%wjm%\hosts1
)
del/q %wjm%\hosts
ren %wjm%\hosts1 hosts
del/q %wjm%\hosts1
cls&echo\&echo 解除屏蔽成功。。。
endlocal&set pinbi=&set pinbi3=
goto loop