首页
社区
课程
招聘
[分享]有趣的批处理
发表于: 2009-5-5 10:26 10461

[分享]有趣的批处理

2009-5-5 10:26
10461
批处理几个例子

1,注册表扫描

@echo off
title 注册表扫描中...
mode con cols=50 lines=10
setlocal enabledelayedexpansion
>%temp%\reglist.txt echo         %DATE%%time% 注册表扫描报告
for /f "tokens=3 delims=\" %%i in ('reg query HKLM\SOFTWARE') do (
echo 当前扫描信息: HKLM\SOFTWARE\%%i
>>%temp%\reglist.txt                echo            ================================================================
>>%temp%\reglist.txt                echo                                    软件名称:%%i 
>>%temp%\reglist.txt                echo            ================================================================
                if not "%%i"=="Classes" if not "%%i"=="Microsoft" for /f "tokens=4 delims=\" %%j in ('reg query HKLM\SOFTWARE\%%i 2^>nul') do (
                                                                echo            软件信息: %%j>>%temp%\reglist.txt

                for /f "tokens=* delims=" %%k in ('reg query "hklm\software\%%i\%%j" /S^|findstr /c:"REG_SZ" ') do (
set /a n+=1
cls
echo 已扫扫描项值: !n!    当前信息: %%j
echo                  关联文件信息:%%k>>%temp%\reglist.txt )

                                                 )
)
)
>>%temp%\reglist.txt echo 如需保存结果请选择文件另存为                BY PPdos
title FINISHED&echo                             扫描完毕!
ping 127.0>nul
start %temp%\reglist.txt

 

2,计算器

 

@echo off 
title DOS计算器---by blackboy 
mode con: cols=45 lines=20 
setlocal enabledelayedexpansion 

REM 开始界面 
:begin 
cls 
color 0a 
echo. 
echo ╭——————╮ 
echo ╭———┤ DOS 计算器 ├———╮ 
echo │ ╰——————╯ │ 
echo │ =by blackboy= │ 
echo │ │ 
echo │ 请选择: │ 
echo │ │ 
echo │ 1 - 普通+-×÷ │ 
echo │ 2 - 求N次方 │ 
echo │ 3 - 求阶乘 │ 
echo │ h - 帮助 │ 
echo │ q - 退出 │ 
echo │ │ 
echo ╰——————————————╯ 
REM 取得用户输入 
echo. 
set UserChoice="" 
set /p UserChoice=请选择: 
if /I %UserChoice%==q goto end 
if /I %UserChoice%==h goto help 
if %UserChoice%==1 goto normal 
if %UserChoice%==2 goto fang 
if %UserChoice%==3 goto jiecheng 
goto error 

REM 普通运算 
:normal 
cls 
echo. 
echo. 
echo. 
echo ╭—————————╮ 
echo │ 普通+-×÷运算 │ 
echo ╰—————————╯ 
echo. 
set /p UserInput=请输入表达式: 
REM 检测表达式 
echo %UserInput% | findstr "[0-9]">nul || goto error 
echo %UserInput% | findstr /I "[a-z]">nul && goto error 
echo %UserInput% | find ".">nul && goto error 
echo %UserInput% | findstr "+ - * /">nul || goto error 
echo %UserInput% | find "+">nul && goto add 
echo %UserInput% | find "-">nul && goto minus 
echo %UserInput% | find "*">nul && goto multiply 
echo %UserInput% | find "/">nul && goto divide 
REM 实际运算 
:add 
for /f "tokens=1,2 delims=+" %%a in ("%UserInput%") do set /a result=%%a+%%b 
echo 计算结果=%result% 
goto refresh 
:minus 
for /f "tokens=1,2 delims=-" %%a in ("%UserInput%") do set /a result=%%a-%%b 
echo 计算结果=%result% 
goto refresh 
:multiply 
for /f "tokens=1,2 delims=*" %%a in ("%UserInput%") do set /a result=%%a*%%b 
echo 计算结果=%result% 
goto refresh 
:devide 
for /f "tokens=1,2 delims=/" %%a in ("%UserInput%") do set /a result=%%a/%%b 
echo 计算结果=%result% 
goto refresh 

REM 计算N次方 
:fang 
cls 
echo. 
echo. 
echo. 
echo ╭—————————╮ 
echo │ 求 N 次 方 │ 
echo ╰—————————╯ 
echo. 
set /p UserInput=请输入表达式: 
REM 检测表达式 
echo %UserInput% | findstr "[0-9]">nul || goto error 
echo %UserInput% | findstr /I "[a-z]">nul && goto error 
echo %UserInput% | find ".">nul && goto error 
echo %UserInput% | find "_">nul || goto error 
set num= 
set n= 
set /a result=1 
for /f "tokens=1,2 delims=_" %%a in ("%UserInput%") do set /a num=%%a & set /a n=%%b 
if %n%==0 goto showfang 
for /L %%i in (1,1,%n%) do set /a result*=%num% 
:showfang 
echo 计算结果=%result% 
goto refresh 

REM 计算阶乘 
:jiecheng 
cls 
echo. 
echo. 
echo. 
echo ╭—————————╮ 
echo │ 求 阶 乘 │ 
echo ╰—————————╯ 
echo. 
set /p UserInput=请输入要求阶乘的整数: 
REM 检测表达式 
echo %UserInput% | findstr "[0-9]">nul || goto error 
echo %UserInput% | findstr /I "[a-z]">nul && goto error 
echo %UserInput% | find ".">nul && goto error 
set /a result=1 
REM 不可以直接判断UserInput是否为0 
set num=%UserInput% 
if %num%==0 goto showjiecheng 
for /L %%i in (%num%,-1,1) do set /a result*=%%i 
:showjiecheng 
echo 计算结果=%result% 
goto refresh 

REM 错误 
:error 
cls 
color 0c 
echo. 
echo. 
echo. 
echo ╭————————————╮ 
echo │ 输入错误,请参考帮助! │ 
echo ╰————————————╯ 
echo. 

REM 刷新 
:refresh 
echo. 
set UserChoice="" 
set /p UserChoice=请按任意键继续,退出请按q,帮助请按h: 
if /I %UserChoice%==q goto end 
if /I %UserChoice%==h goto help 
goto begin 

REM 帮助 
:help 
cls 
color 0a 
echo. 
echo ╭——————╮ 
echo ╭————┤ 帮 助 ├————╮ 
echo │ ╰——————╯ │ 
echo │ │ 
echo │ 1.普通运算请使用以下形式: │ 
echo │ 4+1 5-2 2*3 6/2 │ 
echo │ │ 
echo │ 2.计算N次方请使用以下形式: │ 
echo │ 2_5 (求2的5次方) │ 
echo │ │ 
echo │ 3.只支持整数运算 │ 
echo │ │ 
echo │ 4.输入部分特殊符号可能会 │ 
echo │ 导致意外退出 │ 
echo │ │ 
echo ╰————————————————╯ 
goto refresh 

REM 退出 
:end 
cls 
color 0a 
echo. 
echo. 
echo. 
echo ╭————————————————╮ 
echo │ │ 
echo │ 非常感谢您的使用,再见! │ 
echo │ │ 
echo ╰————————————————╯ 
ping -n 2 127.1>nul 
exit


3,生成dos帮助文档

@echo off
title Dos帮助文档 装载中...
mode con cols=50 lines=5
setlocal enabledelayedexpansion
>Dos帮助文档.txt echo                                Dos帮助文档
>>Dos帮助文档.txt echo.
>>Dos帮助文档.txt echo                               %DATE%%time% 
>>Dos帮助文档.txt echo.
>>Dos帮助文档.txt echo                               作者: LGC
>>Dos帮助文档.txt echo.
for /f "skip=1 " %%i in ('help') do (
>>Dos帮助文档.txt echo           ================================================================
>>Dos帮助文档.txt echo.                                    命令名称:%%i 
>>Dos帮助文档.txt echo           ================================================================
>>Dos帮助文档.txt echo. 
echo.
help %%i >>Dos帮助文档.txt
set /a n+=1
cls
echo 已完成命令数: !n!    当前命令:%%i
>>Dos帮助文档.txt echo. 
)

title FINISHED&echo              扫描完毕!
ping 127.0>nul
Dos帮助文档.txt

4,他妈的给我开机

@echo off 
setlocal EnableDelayedExpansion 

set _tmp_F_S=C:\_delay.vbs 
set _tmp_F_F=C:\_tmp.tmp 
set delay=50 
set s1=开机 
set s2=快开机 
set s3=他妈的开机 
set s4=你他妈到底开不开机 
set s5=操!!再不开机老子砸了你!! 
echo if WScript.Arguments.count = 1 then WScript.Sleep CInt(WScript.Arguments(0)) end if>%_tmp_F_S% 
if exist %_tmp_F_F% del %_tmp_F_F% 
for /L %%i in (1,1,4) do (call :show %%s%%i%% && call :fail %%s%%i%%) 
call :show %s5% 
call :suc 
if exist %_tmp_F_S% del %_tmp_F_S% 
if exist %_tmp_F_F% del %_tmp_F_F% 
ping -n 1 127.1>nul 
goto :EOF 

:show 
if "%~1"=="" goto :EOF 
set s=%1 
set /p ans=%cd%^><nul 
set /A len=0 
:comp_len 
echo %%s:~%len%,1%% | find "ECHO">nul && goto end_comp 
set /A "len+=1" 
goto comp_len 
:end_comp 
set /A "len-=1" 
for /L %%i in (0,1,%len%) do (cscript //nologo %_tmp_F_S% %delay% && set /p ans=!s:~%%i,1!<nul) 
cscript //nologo %_tmp_F_S% 500 
echo. 
echo %cd%^>%1>>%_tmp_F_F% 
echo.>>%_tmp_F_F% 
goto :EOF 

:fail 
echo '%1' 不是内部或外部命令,也不是可运行的程序 
echo 或批处理文件。 
echo. 
echo '%1' 不是内部或外部命令,也不是可运行的程序>>%_tmp_F_F% 
echo 或批处理文件。>>%_tmp_F_F% 
echo.>>%_tmp_F_F% 
goto :EOF 

:suc 
ping -n 1 127.1>nul 
set eqq================================================================================ 
set gtr=^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^>^> 
echo                            Loading Windows 2000 ...>>%_tmp_F_F% 
echo.>>%_tmp_F_F% 
for /L %%i in (0,1,79) do (set /A new=2*%%i && type %_tmp_F_F% && echo !gtr:~0,%%i!!eqq:~%%i,80! && ping -n 1 127.1>nul && cls) 
goto :EOF 


5,系统设置自动登录

 

@echo off
:: 用于不用每次登录都要手动填写登录名和密码
title 快速登录Windows系统               
color 1e
echo.
echo 作者:LGC 
echo.
echo QQ:28493389
echo.
echo    软件描述:现在的黑客如此泛滥,谁也不能保证自己的计算机系统绝对安全,各种各样的入侵技术应用的是相当广泛,而对于我们这些水平一般的用户来说,自己能做只能是把自己的系统登录密码设的复杂一点,这样即使黑客能入侵你,也要很费劲的,对于那些没有耐性的黑客,可能就此退缩哦,嘻嘻而如果把用户密码设的很复杂了,在我们正常登录的时候就会很浪费时间,呵呵,对于我们这类懒人来说,是无法容忍的,所以就做了这个东西,不用登录就客进入系统,嘻嘻。。(并不是真的不登录的,而是Windows自己启动时登录的,嘻嘻。。)
echo.
echo.
echo 1,开启自动登录  2,关闭自动登录  3,自动登录设置 4, 退出
echo.
:STAR
@set /p XZ=请选择操作类型:
if %XZ%== 1 GOTO OPENAUTO
if %XZ%== 2 GOTO CLOSEAUTO
if %XZ%== 3 GOTO EDITAUTO
if %XZ%== 4 GOTO CLOSESYS
if %XZ% GTR 4 GOTO STAR

:OPENAUTO
REG ADD "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /V AutoAdminLogon /T REG_SZ /D 1 /F
goto CLOSESYS
:CLOSEAUTO
REG ADD "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /V AutoAdminLogon /T REG_SZ /D 0 /F
goto CLOSESYS
:EDITAUTO
cls
set /p username=请输入用户名:
REG ADD "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /V DefaultUserName /T REG_SZ /D %username% /F
set /p userpass=请输入用户密码:

echo %userpass%>1
(find /i "echo" 1)>nul && REG ADD "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /V DefaultPassword /T REG_SZ /F || REG ADD "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon" /V DefaultPassword /T REG_SZ /D %userpass% /F
echo pause>nul 
del 1
goto CLOSESYS

:CLOSESYS

pause

6,关机

 

@echo off
title 系统关机
:loop
cls
color bc
echo.
echo.
echo *** WINDOWSXP 快速关机系统 ***
echo.
echo 快速关机……………………请直接回车
echo 开始倒计时关机……………请输入1+回车
echo 设定时间点关机……………请输入2+回车
echo 显示计时关机………………请输入3+回车
echo 设定每天关机………………请输入4+回车
echo 取消系统关机………………请输入空格+回车
echo 退出…………………………请输入Q+回车
echo.
echo.
set a=
set /p a= 【 请输入 】:
if "%a%"=="1" goto aaa
if "%a%"=="2" goto bbb
if "%a%"==" " goto ccc
if "%a%"=="" goto ddd
if "%a%"=="3" goto eee
if "%a%"=="4" goto fff
if "%a%"=="q" exit
goto loop
:ddd
@echo off
color e5
cls
echo.
echo.
echo 〖系统即将关机并结束进程〗
pause
echo.
::ntsd -c q -pn %run%
taskkill /f /t /im pfw.exe /f /t /im internat.exe /f /t /im explorer.exe
shutdown -s -f -t 0 -c "取消请运行shutdown -a"
exit
:aaa
@echo off
color f4
echo.
echo.
echo.
echo 现在将设置系统自动关机,请在此输入倒计时秒数后回车,系统将在设定时间自动关闭
set mytime=
set /p mytimes= 【 倒计时关机请输入 小时数】:
set /a mytimes=%mytimes%*3600
set /p mytimef= 【 倒计时关机请输入 分钟数】:
set /a mytimef=%mytimef%*60
set /p mytimem= 【 倒计时关机请输入 秒 数】:
set /a mytime=%mytimes%+%mytimef%+%mytimem%
shutdown -s -t %mytime% -c "取消请运行shutdown -a"
cls
echo.
echo 〖系统将在%mytime%秒后关机〗
echo.
pause
goto loop
:bbb
@echo off
color f9
echo.
echo.
echo.
echo 现在将设置系统自关机,请在此输入关机时间(如12:00)回车,系统将定时自动关闭
set mytimes=
set mytimef=
set /p mytimes= 【 定时关机请输入 时】:
set /p mytimef= 【 定时关机请输入 分】:
at %mytimes%:%mytimef% shutdown -s -t 0
::这表示在mytime分执行shutdown -s -t 0操作.如果当前时间大于任务执行时间,则默认为明日执行,0为倒计时时间.
echo.
echo 〖现在将显示所有计划〗
echo ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
at
echo ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
pause
::显示计划并暂停
goto loop
:ccc
@echo off
color f2
echo.
echo.
echo.
echo 〖现在将设置取消系统自动关机〗
echo.
pause
shutdown -a
echo.
echo.
echo 〖现在将显示所有计划,在回车后取消计划且无须确认〗
echo ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
at
echo ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
pause
at /del /yes
::取消所有计划并无须确认
cls
echo.
echo 〖系统已经取消自动关机〗
echo 〖系统已经取消所有计划任务〗
echo.
pause
goto loop
:eee
@echo off
color f4
echo.
echo.
echo.
echo 现在将设置系统自动关机,请在此输入倒计时秒数后回车,系统将在设定时间自动关闭
set mytime=
::此行是为了清mytime变量值,以免在不注意的情况下存在变量值,此为一种好的习惯.
set mytimes=0
::赋值为0是为了使%mytimes%不致于无意义,下同.
set mytimef=0
set mytimem=0
set /p mytimes= 【 倒计时关机请输入 小时数】:
set /a mytimes=%mytimes%*3600
set /p mytimef= 【 倒计时关机请输入 分钟数】:
set /a mytimef=%mytimef%*60
set /p mytimem= 【 倒计时关机请输入 秒 数】:
color a3
mode con cols=30 lines=4
set /a mytime=%mytimes%+%mytimef%+%mytimem%
SET wait=ping -n 2 127.0.0.1 ^>^nul
for /l %%n in (%mytime%,-1,0) do (
rem cls
echo *******************
echo 〖%%n秒后自动关机〗
echo *******************
%wait%
cls
)
shutdown -s -t 0
goto loop
:fff
@echo off
color f9
echo.
echo.
echo.
echo 现在将设置系统每天运行自关机
echo.
set myopengs=
set /p myopengs= 【重复设定请输入单空格+回车,单次及最后一次设定请回车】
echo.
echo 请在此输入关机时间(如12:00)后回车,系统将定时关闭
echo.
set mytimes=
set mytimef=
set /p mytimes= 【 定时关机请输入 时】:
set /p mytimef= 【 定时关机请输入 分】:
at %mytimes%:%mytimef% /EVEry:M,T,W,Th,F,S,Su shutdown -s -f
echo.
echo 〖现在将显示所有计划〗
echo ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
at
echo ■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■■
pause
::显示计划并暂停
if "%myopengs%"==" " goto :fff
goto loop

[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 0
支持
分享
最新回复 (41)
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
注释比有意思
2009-5-5 10:47
0
雪    币: 86
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
学习下这个批处理
2009-5-5 11:08
0
雪    币: 211
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
好长呀!
2009-5-5 12:33
0
雪    币: 202
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
看晕了
2009-5-7 13:52
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
自己搞不出来啊,哈哈。学习学习长长见识
2009-5-8 09:45
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
我也来学习一下了啊
2009-5-8 20:28
0
雪    币: 211
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
非常不错。批处理也可以这么强大。爽!
2009-5-8 20:29
0
雪    币: 370
活跃值: (15)
能力值: ( LV9,RANK:170 )
在线值:
发帖
回帖
粉丝
9
就看了开头一段,学习了SET /P 的用法

原来一直很苦恼XP自带命令里已经没有了CHOICE这个命令

没法接受用户输入

现在知道了DOS下可以SET /P 来着

The /P switch allows you to set the value of a variable to a line of input
entered by the user. Displays the specified promptString before reading
the line of input. The promptString can be empty.
2009-5-8 22:19
0
雪    币: 485
活跃值: (12)
能力值: ( LV9,RANK:490 )
在线值:
发帖
回帖
粉丝
10
很长,很强大!
2009-5-9 08:24
0
雪    币: 2119
活跃值: (668)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
还是第四个比较有意思,以前见过这个的GIF图片
2009-5-9 15:12
0
雪    币: 110
活跃值: (40)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
12
批处理也可以写这么长
平时看到的都好短
2009-5-9 18:02
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
13
....我都不认识..~
2009-5-10 23:32
0
雪    币: 204
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
14
解释太通俗了。
2009-5-11 07:53
0
雪    币: 210
活跃值: (11)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
15
看晕了
2009-5-11 08:48
0
雪    币: 304
活跃值: (82)
能力值: ( LV9,RANK:170 )
在线值:
发帖
回帖
粉丝
16
我也贴两个,都是别人写的,风险自担。

1。 清理系统
@echo off     
echo 正在清除系统!!!!文件,请稍等......     
del /f /s /q %systemdrive%\*.tmp     
del /f /s /q %systemdrive%\*._mp     
del /f /s /q %systemdrive%\*.log     
del /f /s /q %systemdrive%\*.gid     
del /f /s /q %systemdrive%\*.chk     
del /f /s /q %systemdrive%\*.old     
del /f /s /q %systemdrive%\recycled\*.*     
del /f /s /q %windir%\*.bak     
del /f /s /q %windir%\prefetch\*.*     
rd /s /q %windir%\temp & md %windir%\temp     
del /f /q %userprofile%\COOKIES s\*.*     
del /f /q %userprofile%\recent\*.*     
del /f /s /q "%userprofile%\Local Settings\Temporary Internet Files\*.*"     
del /f /s /q "%userprofile%\Local Settings\Temp\*.*"     
del /f /s /q "%userprofile%\recent\*.*"     
sfc /purgecache '清理系统盘无用文件     
defrag %systemdrive% -b '优化预读信息     
echo 清除系统LJ完成!     
echo. & pause     

2. 局域网mac扫描
echo off
cls
@echo ================================================
@echo ============局域网MAC地址扫描器=================
@echo =============扫描你所在的网段===================
@echo ================================================
@echo .
pause

set a=^set /p=■%b%^<nul^&ping/n 0 127.1^>nul^&

echo ┌──────────────────────────────────────┐
set/p= <nul&%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%%a%
echo    100%%
echo └──────────────────────────────────────┘
set b=
set a=■
set /a z=100

@echo [计算机名]     [Mac地址]    [IP地址]    [IPX]   [CDKey]   网关 DNS1 DNS2 DNS3 DNS4 >config.cfg
set /p getway= 请输入网关地址(必须):
set /p DNS1= 请输入DNS1地址(必须):
set /p DNS2= 请输入DNS2地址(必须):
set /p DNS3= 请输入DNS3地址(必须):
set /p DNS4= 请输入DNS4地址(必须):
If Exist ipconfig.txt Del ipconfig.txt   
ipconfig /all >ipconfig.txt
If Exist phyaddr.txt      Del phyaddr.txt
find "Host Name" ipconfig.txt >ComputerCfg.txt
For /f "skip=2 tokens=17" %%N In (ComputerCfg.txt) Do Set ComputerName=%%N
find "IP Address" ipconfig.txt >IPAddr.txt
For /f "skip=2 tokens=15" %%I In (IPAddr.txt) Do Set IP=%%I
find "Physical Address" ipconfig.txt >phyaddr.txt
For /f "skip=2 tokens=12" %%M In (phyaddr.txt) Do Set strMac=%%M
@Echo %IP% >ping.txt
For /f "delims=. tokens=1" %%M In (ping.txt) Do Set p1=%%M
For /f "delims=. tokens=2" %%M In (ping.txt) Do Set p2=%%M
For /f "delims=. tokens=3" %%M In (ping.txt) Do Set p3=%%M
set /a ipscan=0
goto panduan

:panduan
cls
set a=%a%■
set /a b=%ipscan%*100/254
set /a z=%ipscan%*100/254
@echo 完成进度 %z%%%

@echo   ┌──────────────────────────────────────────┐
@echo     %a% %b%%%
@echo   └──────────────────────────────────────────┘

IF %ipscan%==254 (
goto end
) ELSE (
goto scanip
)

:end
del c.txt
del c1.txt
del c2.txt
del ComputerCfg.txt
del IPAddr.txt
del ipconfig.txt
del phyaddr.txt
del ping.txt
set /a sum =5
set /a sum-=1

@echo .      文件已保存!
@echo .
@echo .
set/p=%sum% 秒后退出! <nul
if %sum% EQU 0 exit
ping /n 2 127.1 >nul
exit

:scanip
set /a ipscan+=1

ping /n 1 /w 300 %p1%.%p2%.%p3%.%ipscan% >c.txt
find   "Maximum" c.txt && Goto star
goto panduan

:star
nbtstat -a %p1%.%p2%.%p3%.%ipscan% >c1.txt
For /f "skip=2 tokens=4" %%X In (c1.txt) Do Set p5=%%X
find "UNIQUE" c1.txt >c2.txt
For /f "skip=2 tokens=1" %%N In (c2.txt) Do Set p6=%%N
@echo %p6%         %p5%         %p1%.%p2%.%p3%.%ipscan%         %ipscan%         请填写CS-CDKEY         %getway%         %DNS2%         %DNS3%         %DNS4%         %DNS1%>>config.cfg
goto panduan
2009-5-11 10:32
0
雪    币: 86
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
17
好好学习天天向上
2009-5-11 11:00
0
雪    币: 200
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
18
有点深奥。。。。
学习一下了。。。。。
2009-5-17 01:33
0
雪    币: 16
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
19
批处理一直很强大,只要努力学习就能发现很多好用的东西,加油哦!
2009-5-18 16:11
0
雪    币: 258
活跃值: (40)
能力值: ( LV3,RANK:20 )
在线值:
发帖
回帖
粉丝
20
哈哈 晕了 太长了
2009-5-24 17:42
0
雪    币: 202
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
21
猛, 我也写过不少, 不过没这么猛
2009-5-24 19:33
0
雪    币: 32
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
22
有点头晕啊~
2009-5-25 08:14
0
雪    币: 101
活跃值: (88)
能力值: ( LV2,RANK:140 )
在线值:
发帖
回帖
粉丝
23
看到好多这个:
ping -n 1 127.1>nul

啥意思啊?
2009-5-25 11:23
0
雪    币: 360
活跃值: (77)
能力值: ( LV9,RANK:250 )
在线值:
发帖
回帖
粉丝
24
延时 。。。。。。。。
2009-5-25 11:37
0
雪    币: 40
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
25
有几个的确挺有意思的
2010-4-28 19:23
0
游客
登录 | 注册 方可回帖
返回
//