原创批处理之网站屏蔽与解除屏蔽批处理

 更新时间:2008年07月03日 09:21:17   转载 作者:  
非常不错的用批处理实现的网站屏蔽和解除网站屏蔽的代码
@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

相关文章

最新评论