文档视界 最新最全的文档下载
当前位置:文档视界 › bat文件制作教程

bat文件制作教程


进入正题
①首先,新建一个.txt文件,想必大家都会。
如图bat-1,我描述一下吧。
回到桌面 → 右键单击 → 新建 → 找到文本文档并单击新建一个.txt文件
 
②然后对.txt进行重命名。命名成“XXX.bat”,里面“XXX”是什么都不重要,重要的是要把“.txt”改成“.bat” 及修改扩展名(如果你发

现自家电脑不显示拓展名,或正常情况下修改后发现图标为改变,则进行下面第③步,否则到第四步)。
 
③修改文件夹选项首先打开“我的电脑”(WIN7里似乎叫本地硬盘) → 打开“工具” → 打开“文件夹选项” → 打开“查看” → 高级设置里

将已经勾选了的“隐藏已知文件类型的扩展名”选项勾掉。就能显示扩展名了。然后再做一次第②步
 
④进行编进BAT 完成了扩展名修改,将看到文件的图标已经变成了一个齿轮(winXP)或一大一小两个齿轮(win7) 然后右键猛击它,找到“编辑

”,猛击!然后就看到跳出个文本文档一样的东东,就在里面写命令就可以了。写完直接保存,看效果就直接双击.bat文件。
 
当然,如果你不嫌麻烦,可以先在.txt文件里写好,再把扩展名改成.bat,发现错了,再改成.txt,在修改,再改成.bat…………………
 
还有一种方法,如图bat-2



第一课 - cmd及其常用命令
 
BAT是什么?这是学习BAT的最基本知识。
BAT文件是可执行文件,由一系列cmd命令构成,其中可以包含对其他程序的调用。 这个文件的每一行都是一条cmd命令,你可以使

用Windows的记事本(notepad)等任何文本文件编辑工具创建和修改批处理文件。
 
其次,批处理文件是一种简单的程序。可以通过条件语句和流程控制语句来控制命令运行的流程,在批处理中也可以使用循环语句(for)来循环

执行一条命令。批处理程序语句就是一条条的cmd命令。而批处理的能力主要取决于你所使用的命令。
——引用和修改BAT百度百科。
 
你可以学习各种命令来写你的BAT文件。平时常用的cmd的命令有很多,如:
shutdown 命令
md和rd 命令 ……
首先,直接输入命令是没有用的,你需要加入参数“ -?”或“ /? ”来完善命令,以便cmd或BAT来实行。
 
shutdown是关机、注销以及重启命令,但怎么区分呢?就要用参数来区分。

shutdown -l 就是注销命令; shutdown -s 就是关机命令; shutdown -r 就是重启命令。另外,命令可以携带两个参数及以上,从而增加命

令的精确度和功能度,比如

shutdown -s -t 数字 就是在“数字”秒后关机;
shutdown -r -t 数字 就是在“数字”秒后重启;
shutdown -l -t 数字 就是在“数字”秒后注销。
 
那么,md和rd又是什么命令呢


首先,md和rd是相对应的命令,
md 是建立文件夹的命令,而 rd 则是删除文件夹的命令。

具体用法是这样的:
md 路径\文件夹名
就是在“路径”里建立以“文件夹名”为名字的文件。
如:
md c:\windows\freenm就是在c盘%windir%里
建立了名为“freenm”的文件夹。
(注:%windir%代表系统文件夹,一般名为“windows”或“WINDOWS”)
 
那么,我知道一个命令,但不知道用法或参数,怎么办呢??
很简单,microsoft很贴心~~
自带了命令解释,你只要输入: “ 命令 /? ”就能得到命令的用法与参数了,至于实在不行……
百度一下基本上就没什么问题了



第三课 - echo与rem以及@(外加pause)简析
echo的功能是显示文字,
用法:“echo 文字” 举例:“@echo Freenm”
再打开BAT文件后就能显示“Freenm”。这个也不是很难。我这样说道。
……
根据“一个作用以最简的方法写就”原则,
我认为是这样的:在开始地方写“@echo off”(意为不显示命令存在的路径),

这样就可以代替在每个命令前加@


在开始地方写“@echo off”(意为不显示命令存在的路径),
然后显示文字就输入命令:“echo 文字”,
如果你想让这一夜空掉,
就输入“echo.”即可。
当然“echo.文字”也可以,“echo,文字”亦可以……
关于echo我也只想写这么多了。

另外的“rem”,是个很奇怪的命令。功能就是“在批处理文件里加上注解或说明”,
就是说,批处理文件会将“rem”后面的54(无视)。
小贴士:可以用“∷”代替“rem”。



“怎么,我们还没学过‘>nul’的!哪里来的?”
呵呵,就是要超前吗……
不然哪有意思??
说道>nul了,那就好好讲一讲。
“pause”功能是暂停,可以让BAT运行到此处停一下。
大家可能发现了,pause代码会导致BAT文件显示“按任意键继续……”
可能大家都会觉得不爽,怎么弄掉它?
呵呵,“>nul”就能帮助你,你可以在“pause”后面加上“>nul”,
这样就不会显示“按任意键继续……”了。
就像我写的答案这样。
再说说“ping”吧!大家可能看到“ping”就会想到邪恶的“ping炸弹”之类的,
其实,“ping”本好人,
在BAT文件里是还算重要。
平时,你可能觉得BAT文件就是“一直运行下去,遇到pause就停一下,真太死板了”,那么,“ping”可以搞定!
ping 功能就是向某个IP地址发送数据包,
那么,我们就可以用它来让BAT等待几秒钟了。
我们一般在BAT里这么写:“ping ‘数字’ ‘地址’”,
例如: ping 5 127.1
就是说,向IP为127.1的主机发送5个数据包,
每个数据包大概为0.75-1.55秒,
因为每台机子的网络速度不同,所以有

快有慢了。可是……






可讲很多,我们也要实习一下了,从网上找到“建立O盘”这个似乎很神奇的玩意儿,
我们来解析一下,其实很简单的。
@ECHO OFF
MD E:\RECYCLED\UDrives.{25336920-03F9-11CF-8FD0-00AA00686F13}>NUL
→在E盘RECYCLED(回收站源文件)文件夹里建立一个叫UDrives的文件夹(在回收站不显示)。
→md 建立文件夹的命令,而后面的则是使其在桌面的回收站不显示文件夹咯。
IF EXIST O:\NUL GOTO DELETE
→如果O盘开着,就跳到“DELETE”标签,并运行下面的命令;如果不,就按顺序运行下去。 →if exist 这个命令有一定用处,用来测定“后面
的文件”是不是存在,在就到某个标签,得看命令怎么写。
SUBST O: E:\RECYCLED\UDrives.{25336920-03F9-11CF-8FD0-00AA00686F13}
→以UDrives为源文件建立O盘。
→subst 建立一个磁盘分区,不懂就去百科磁盘分区!
START O:\ →打开O盘。
→start 常用cmd命令,打开某个文件夹、文件。
GOTO END
→到“END”这个标签,并运行下面的命令。
→goto 到达某个标签的命令,标签,就是“:xxx”的形式。到达某标签就运行标签下面的命令。
:delete
→这就是标签。
SUBST o: /d →关闭O盘。
→subst /d subst /d subst加了参数后,就改变了意义,这是删除磁盘分区的命令,但是不会删除源文件。
:END
→标签一个,后面没东西了,就退出了。没啥说的。




choice 在选择列表选择一个选项。
当然,你可以习惯性的打开command,输入“choice /?”,
windows xp用户可能郁闷了,咋么没有呢?嘻嘻,忘了说了,
“choice”是win7的文件了,是cmd外部命令
xp用户是没有的咯。
当然你可以来下载 - 百度一下就行了,
choice 用起来是很简单的,
大部分用一个专用参数:“choice /c xxxxx /n”
嗯……“xxxxx”是英文数字不限的,
例如:
========代码开始========
echo 1.开始 2.退出
choice /c 12 /n
if errorlevel 2 goto X
if errorlevel 1 goto X
========代码完毕========
是的,“choice”后面需要加“if errorlevel”,
而“X”是随便的标签,
另外有一点,是要倒叙排列。也就是要倒着写咯。
好了,要说的“set”了——显示、设置或删除cmd.exe的环境变量。
“set”的参数很多,我们现在只讲三个咯。
①不加参数,那么是赋值。讲个例子吧!
“set bat=9527”
嗯,就是给“bat”赋予值为“9527”
那么有什么用?


哼哼,小看了“set”了。
你可以在很多地方地方用到这个变量,
比如你在赋予值后可以再“echo”、“start”等等。
比如:
========代码开始=======
@echo off
set bat=9527
echo 1+9526=%bat%
pause>nul
========代码结束=======
呵呵,看到了么?
这就是一个好例子

,不过,你在赋值后使用时要在“被赋值”的变量两边加上“%”,
后面都是这样。
嗯什么……你说没用?好吧,第二个!
②“set /p”让用户赋值,呵呵,更有意思了。
不多说,开始讲例子咯!
“set /p bat=请复制:”
呵呵,看到了吗?
这就是一个好例子,不过,你在赋值后使用时要在“被赋值”的变量两边加上“%”,
后面都是这样。
嗯什么……你说没用?好吧,第二个!
②“set /p”让用户赋值,呵呵,更有意思了。
不多说,开始讲例子咯!
“set /p bat=请复制:”
呵呵,看到了吗?
BAT文件在运行到这行时,就会停下来,让用户输入以下数据,
这样,BAT文件会将“bat”的只给变成“用户输入的数据”。
到底怎么用?有两点!
1)
========代码开始========
@echo off set /p mingzi=请输入你的名字:
echo 好了,%mingzi%,你将开始这个游戏!
echo 准备好了吗?
pause>nul =
=======代码完毕========
就是这样!看懂了吗?
2)
========代码完毕========
@echo off
set /p xuanze=请选择(1=开始,2=退出):
if %xuanze%==1 goto X1
if %xuanze%==2 goto X2
:X1
XXXXXXXXXXXXXXXXXXX
:X2
XXXXXXXXXXXXXXXXXXX
========代码完毕========
嗯哼?这就是超常用的选择。“X”是某个标签。
是的,讲完了?不不!
set /p 还能用来实现超级烂的“密码”功能咯,不多说了,讲例子!
========代码开始========
@echo off set /p mima=请输入密码:
if %mima%==XXXXXXXX goto 1
goto 2
========代码完毕========
是的,就是这样,你就能在某个程序前面加上一个密码功能,“XXXXXXXX”就是你设置的密码咯。当然,基本上属于废品,因为……用的人
看一下源码就知道了……
呵呵,终于讲完了!O(∩_∩)O~


相关文档