BAT编写详细手册

合集下载

批处理bat编程详解

批处理bat编程详解

批处理bat编程详解批处理语法,bat语法转自百度,仅为分享。

批处理就是把一批或者说是一条条命令放在一个文本里,然后批量执行!执行这一批命令的文件的扩展名是BAT文件或者CMD,把任何一批命令放入在有这样扩展名的文件里,执行时里面的命令就会一条条的执行完,当然我们还可以在其中加入一些逻辑判断的语句,让里面的命令在满足一定条件时执行指定的命令.了解了大概意思后,我们正式开始学习.先看一个简单的例子!@echo offecho "欢迎来到非常BAT!"pause把上面的3条命令保存为test.bat或者test.cmd然后执行,他就会在屏幕上显示二行话:"欢迎来到非常BAT!请按任意键继续. . ." 这就是一个简单批处理文件了,我们来分析一下.这个批处理文件一共就用了2条命令 "echo" 和"pause" 还有一个特殊符号"@"@符号在批处理中的作用是关闭当前行命令的回显,也就是不显示执行的是什么命令,只显示命令的结果!你可以执行下面这个批处理文件来理解,保存为*.bat或者*.CMD @echo 你好echo 你好@pauseecho命令的作用有两个,一个是在CMD上回显一行内容.如:echo "欢迎来到非常BAT!",还一个是关闭命令的回显:echo offecho off的作用就相当于在每条命令前面加一个@符号,这样所有的命令将只会显示结果不显示命令.我们在echo off这命令前加一个@符号是为了不让echo off这条命令本身显示出来,让批处理更完美!pause命令就是暂停的意思,防止批处理执行完后直接退出!执行pause命令后会自动在CMD里显示"请按任意键继续. . ."这样一行话! 从上面这个简单的批处理中,我们可以发现其实批处理就是运用一些含有特殊意义的符号和一些完成指定功能的命令组合而成,那么在批处理中有多少这样的特殊符号和功能命令呢?我们现在就来仔细了解一下一些最常用的!(以下内容来源网络,请各位仔细阅读,好进入下节的实例说明)批处理的常见命令REMECHOGOTOCALL还有(FOR,SETLOCAL,SHIFT)这几个命令比较难,不适合写在基础篇,以后说明!批处理定义:顾名思义,批处理文件是将一系列命令按一定的顺序集合为一个可执行的文本文件,其扩展名为BAT。

BAT批处理文件教程

BAT批处理文件教程

BAT批处理文件教程BAT(批处理)文件是Windows操作系统中的一种脚本文件,用于自动化执行一系列命令或任务。

下面是一个关于BAT批处理文件的教程,包含了基本语法、常用命令和一些高级技巧。

一、基本语法2.每个命令或任务在一行上完成,并以换行符或连字符“&&”分隔。

例如:```echo Hello World!pause```上述代码将先输出"Hello World!",然后暂停执行,直到用户按下任意键。

3.注释用REM命令,行开头添加“REM”或“::”。

例如:```REM这是一个注释::这也是一个注释```二、常用命令1. echo:用于输出文本到控制台。

例如:echo Hello World!```2. pause:暂停批处理文件的执行,并提示用户按下任意键继续。

例如:```pause```3. cls:清屏。

例如:```cls```4. cd:改变当前目录。

例如:```cd C:\Program Files```5. dir:显示目录中的文件和子目录。

例如:```dir6. copy:复制文件。

例如:```copy source.txt destination.txt```7. move:移动文件或重命名文件。

例如:```move source.txt destination.txt```8. del:删除文件。

例如:```del file.txt```9. if:条件语句,用于根据一些条件选择执行不同的命令。

例如:```if %ERRORLEVEL%==0echo Successelseecho Failure三、高级技巧1.变量:可以定义和使用变量。

例如:```set var=Helloecho %var%```2. 循环:可以使用for循环来重复执行命令。

例如:```for %%i in (1,2,3) doecho %%i```上述代码将输出数字1、2、33. 函数:可以使用call命令调用子程序。

bat操作基础 windows下的入门级批处理编程手册

bat操作基础 windows下的入门级批处理编程手册

BAT批处理文件语法==== 注=======================================.bat是dos下的批处理文件.cmd是nt内核命令行环境的另一种批处理文件从更广义的角度来看,unix的shell脚本以及其它操作系统甚至应用程序中由外壳进行解释执行的文本,都具有与批处理文件十分相似的作用,而且同样是由专用解释器以行为单位解释执行,这种文本形式更通用的称谓是脚本语言。

所以从某个程度分析,batch, unix shell, awk, basic, perl 等脚本语言都是一样的,只不过应用的范围和解释的平台各有不同而已。

甚至有些应用程序仍然沿用批处理这一称呼,而其内容和扩展名与dos的批处理却又完全不同。

===================================首先批处理文件是一个文本文件,这个文件的每一行都是一条DOS命令(大部分时候就好象我们在DOS提示符下执行的命令行一样),你可以使用DOS下的Edit或者Windows的记事本(notepad)等任何文本文件编辑工具创建和修改批处理文件。

==== 注===================批处理文件中完全可以使用非dos命令,甚至可以使用不具有可执行特性的普通数据性文件,这缘于windows系统这个新型解释平台的涉入,使得批处理的应用越来越"边缘化"。

所以我们讨论的批处理应该限定在dos环境或者命令行环境中,否则很多观念和设定都需要做比较大的变动。

========================其次,批处理文件是一种简单的程序,可以通过条件语句(if)和流程控制语句(goto)来控制命令运行的流程,在批处理中也可以使用循环语句(for)来循环执行一条命令。

当然,批处理文件的编程能力与C语言等编程语句比起来是十分有限的,也是十分不规范的。

批处理的程序语句就是一条条的DOS命令(包括内部命令和外部命令),而批处理的能力主要取决于你所使用的命令。

bat编写教程

bat编写教程

批处理示例
1. IF-EXIST
1)
首先用记事本在C:\建立一个test1.bat批处理文件,文件内容如下:
@echo off
IF EXIST \AUTOEXEC.BAT TYPE \AUTOEXEC.BAT
IF NOT EXIST \AUTOEXEC.BAT ECHO \AUTOEXEC.BAT does ns目录
wps 运行wps
批处理文件的参数
批处理文件还可以像C语言的函数一样使用参数(相当于DOS命令的命令行参数),这需要用到一个参数表示符“%”。
%[1-9]表示参数,参数是指在运行批处理文件时在文件名后加的以空格(或者Tab)分隔的字符串。变量可以从%0到%9,%0表示批处理命令本身,其它参数字符串用%1到%9顺序表示。
choice的命令语法(该语法为Windows 2003中choice命令的语法,其它版本的choice的命令语法与此大同小异):
CHOICE [/C choices] [/N] [/CS] [/T timeout /D choice] [/M text]
描述:
该工具允许用户从选择列表选择一个项目并返回所选项目的索引。
dir c:\*.* >a.txt 将c盘文件列表写入a.txt
call c:\ucdos\ucdos.bat 调用ucdos
echo 你好 显示"你好"
pause 暂停,等待按键继续
rem 准备运行wps 注释:准备运行wps
执行:
C:\>TEST2 AUTOEXEC.BAT
该命令运行结果同上。
说明:
(1) IF EXIST 是用来测试文件是否存在的,格式为

批处理bat详细教程完整版

批处理bat详细教程完整版

批处理bat详细教程完整版一、交互界面设计没啥说的,看看高手设计的菜单界面吧:@echo offclstitle 终极多功能修复:menuclscolor 0Aecho.echo ============================== echo 请选择要进行的操作,然后按回车echo ============================== echo.echo 1.网络修复及上网相关设置,修复IE,自定义屏蔽网站echo. echo 2.病毒专杀工具,端口关闭工具,关闭自动播放echo. echo 3.清除所有多余的自启动项目,修复系统错误echo. echo 4.清理系统垃圾,提高启动速度echo.echo Q.退出echo.echo.:choset choice=set /p choice= 请选择:IF NOT "%choice%"=="" SET choice=%choice:~0,1%if /i "%choice%"=="1" goto ipif /i "%choice%"=="2" goto setsaveif /i "%choice%"=="3" goto kaijiif /i "%choice%"=="4" goto cleanif /i "%choice%"=="Q" goto enddecho 选择无效,请重新输入echo.goto cho只要学完本教程前面的章节,上面的程序应该能看懂了。

二、if…else…条件语句前面已经谈到,DOS条件语句主要有以下形式IF [NOT] ERRORLEVEL number commandIF [NOT] string1==string2 commandIF [NOT] EXIST filename command增强用法:IF [/I] string1 compare-op string2 command增强用法中加上/I就不区分大小写了!增强用法中还有一些用来判断数字的符号:EQU - 等于NEQ - 不等于LSS - 小于LEQ - 小于或等于GTR - 大于GEQ - 大于或等于上面的command命令都可以用小括号来使用多条命令的组合,包括else子句,组合命令中可以嵌套使用条件或循环命令。

BAT脚本编写教程

BAT脚本编写教程

BAT脚本编写教程echo、@、call、pause、rem(小技巧:用::代替rem)是批处理文件最常用的几个命令,我们就从他们开始学起。

echo 表示显示此命令后的字符echo off 表示在此语句后所有运行的命令都不显示命令行本身@与echo off相象,但它是加在每个命令行的最前面,表示运行时不显示这一行的命令行(只能影响当前行)。

call 调用另一个批处理文件(如果不用call而直接调用别的批处理文件,那么执行完那个批处理文件后将无法返回当前文件并执行当前文件的后续命令)。

pause 运行此句会暂停批处理的执行并在屏幕上显示Press any key to continue...的提示,等待用户按任意键后继续rem 表示此命令后的字符为解释行(注释),不执行,只是给自己今后参考用的(相当于程序中的注释)。

例1:用edit编辑a.bat文件,输入下列内容后存盘为c:\a.bat,执行该批处理文件后可实现:将根目录中所有文件写入a.txt中,启动UCDOS,进入WPS等功能。

批处理文件的内容为: 命令注释:@echo off不显示后续命令行及当前命令行dir c:\*.* >a.txt将c盘文件列表写入a.txtcall c:\ucdos\ucdos.bat调用ucdosecho 你好显示"你好"pause 暂停,等待按键继续rem 准备运行wps 注释:准备运行wpscd ucdos进入ucdos目录wps 运行wps批处理文件的参数批处理文件还可以像C语言的函数一样使用参数(相当于DOS命令的命令行参数),这需要用到一个参数表示符“%”。

%[1-9]表示参数,参数是指在运行批处理文件时在文件名后加的以空格(或者Tab)分隔的字符串。

变量可以从%0到%9,%0表示批处理命令本身,其它参数字符串用%1到%9顺序表示。

例2:C:根目录下有一批处理文件名为f.bat,内容为:@echo offformat %1如果执行C:\>f a:那么在执行f.bat时,%1就表示a:,这样format %1就相当于format a:,于是上面的命令运行时实际执行的是format a:例3:C:根目录下一批处理文件名为t.bat,内容为:@echo offtype %1type %2那么运行C:\>t a.txt b.txt%1 : 表示a.txt%2 : 表示b.txt于是上面的命令将顺序地显示a.txt和b.txt文件的内容。

BAT脚本编写教程

BAT脚本编写教程

BAT脚本编写教程echo、@、call、pause、rem(小技巧:用::代替rem)是批处理文件最常用的几个命令,我们就从他们开始学起。

echo 表示显示此命令后的字符echo off 表示在此语句后所有运行的命令都不显示命令行本身@与echo off相象,但它是加在每个命令行的最前面,表示运行时不显示这一行的命令行(只能影响当前行)。

call 调用另一个批处理文件(如果不用call而直接调用别的批处理文件,那么执行完那个批处理文件后将无法返回当前文件并执行当前文件的后续命令)。

pause 运行此句会暂停批处理的执行并在屏幕上显示Press any key to continue...的提示,等待用户按任意键后继续rem 表示此命令后的字符为解释行(注释),不执行,只是给自己今后参考用的(相当于程序中的注释)。

例1:用edit编辑a.bat文件,输入下列内容后存盘为c:\a.bat,执行该批处理文件后可实现:将根目录中所有文件写入a.txt中,启动UCDOS,进入WPS等功能。

批处理文件的内容为: 命令注释:@echo off不显示后续命令行及当前命令行dir c:\*.* >a.txt将c盘文件列表写入a.txtcall c:\ucdos\ucdos.bat调用ucdosecho 你好显示"你好"pause 暂停,等待按键继续rem 准备运行wps 注释:准备运行wpscd ucdos进入ucdos目录wps 运行wps批处理文件的参数批处理文件还可以像C语言的函数一样使用参数(相当于DOS命令的命令行参数),这需要用到一个参数表示符“%”。

%[1-9]表示参数,参数是指在运行批处理文件时在文件名后加的以空格(或者Tab)分隔的字符串。

变量可以从%0到%9,%0表示批处理命令本身,其它参数字符串用%1到%9顺序表示。

例2:C:根目录下有一批处理文件名为f.bat,内容为:@echo offformat %1如果执行C:\>f a:那么在执行f.bat时,%1就表示a:,这样format %1就相当于format a:,于是上面的命令运行时实际执行的是format a:例3:C:根目录下一批处理文件名为t.bat,内容为:@echo offtype %1type %2那么运行C:\>t a.txt b.txt%1 : 表示a.txt%2 : 表示b.txt于是上面的命令将顺序地显示a.txt和b.txt文件的内容。

BAT批处理命令使用实用教程

BAT批处理命令使用实用教程

BAT批处理命令使用实用教程一、创建和运行BAT批处理文件2.在文件中输入批处理命令,每个命令一行。

3. 保存文件时,选择文件类型为“所有文件”,并使用扩展名“.bat”。

4.双击BAT文件即可运行。

二、常用的BAT批处理命令1. echo:用于在屏幕上显示文本。

```batecho Hello World```2. rem:用于注释一行代码,并不会被执行。

```batrem 这是一个注释```3. if:用于实现条件判断。

```batif exist "C:\Windows"echo 文件夹存在elsecho 文件夹不存在```4. set:用于创建和设置环境变量。

```batset var=Helloecho %var%```5. for:用于自动化执行一些命令或操作。

```batfor %%i in (1,2,3,4,5) doecho %%i```6. goto:用于跳转到脚本中的特定位置。

```batgoto label:labelecho 跳转成功```7. pause:用于暂停脚本的执行,等待用户按下任意键。

```batecho 按下任意键继续...pause > nul```8. call:用于调用其他脚本文件。

```batcall other.bat```9. start:用于打开应用程序或文件。

```batstart notepad.exe```三、高级技巧1.批处理脚本的传参:可以在运行脚本时在命令行中传递参数,然后在脚本中使用%1,%2等变量来接收参数。

```batecho 参数1:%1echo 参数2:%2```2.批处理脚本的循环:可以使用for命令和if命令结合来实现循环操作。

```batfor /L %%i in (1,1,5) doif %%i == 3rem 跳过第3次循环goto :skipecho %%i:skip```3.批处理脚本的错误处理:可以使用if、goto和errorlevel来实现错误处理。

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

首先,批处理文件是一个文本文件,这个文件的每一行都是一条DOS命令(大部分时候就好象我们在DOS提示符下执行的命令行一样),你可以使用DOS下的Edit或者Windows的记事本(notepad)等任何文本文件编辑工具创建和修改批处理文件。

其次,批处理文件是一种简单的程序,可以通过条件语句(if)和流程控制语句(goto)来控制命令运行的流程,在批处理中也可以使用循环语句(for)来循环执行一条命令。

当然,批处理文件的编程能力与C语言等编程语句比起来是十分有限的,也是十分不规范的。

批处理的程序语句就是一条条的 DOS命令(包括内部命令和外部命令),而批处理的能力主要取决于你所使用的命令。

第三,每个编写好的批处理文件都相当于一个DOS的外部命令,你可以把它所在的目录放到你的DOS搜索路径(path)中来使得它可以在任意位置运行。

一个良好的习惯是在硬盘上建立一个bat或者batch 目录(例如C:\BATCH),然后将所有你编写的批处理文件放到该目录中,这样只要在path中设置上c:\batch,你就可以在任意位置运行所有你编写的批处理程序。

第四,在DOS和Win9x/Me系统下,C:盘根目录下的AUTOEXEC.BAT批处理文件是自动运行批处理文件,每次系统启动时会自动运行该文件,你可以将系统每次启动时都要运行的命令放入该文件中,例如设置搜索路径,调入鼠标驱动和磁盘缓存,设置系统环境变量等。

下面是一个运行于 Windows 98下的autoexec.bat 的示例:@ECHO OFFPATHC:\WINDOWS;C:\WINDOWS\COMMAND;C:\UCDOS;C:\DOSTools;C:\SYSTOOLS;C:\WIN TOOLS;C:\BATCHLH SMARTDRV.EXE /XLH /INSERTLH CTMOUSE.EXESET TEMP=D:\TEMPSET TMP=D:\TEMP批处理的作用简单的说,批处理的作用就是自动的连续执行多条命令。

这里先讲一个最简单的应用:在启动wps软件时,每次都必须执行(>前面内容表示DOS提示符):C:\>cd wpsC:\WPS>spdosC:\WPS>pyC:\WPS>wbxC:\WPS>wps如果每次用WPS之前都这样执行一遍,您是不是觉得很麻烦呢?好了,用批处理,就可以实现将这些麻烦的操作简单化,首先我们编写一个runwps.bat批处理文件,内容如下:@echo offc:cd\wpsspdospywbxwpscd\以后,我们每次进入wps,只需要运行runwps这个批处理文件即可。

常用命令echo、@、call、pause、rem(小技巧:用::代替rem)是批处理文件最常用的几个命令,我们就从他们开始学起。

echo 表示显示此命令后的字符echo off 表示在此语句后所有运行的命令都不显示命令行本身@与echo off相象,但它是加在每个命令行的最前面,表示运行时不显示这一行的命令行(只能影响当前行)。

call 调用另一个批处理文件(如果不用call而直接调用别的批处理文件,那么执行完那个批处理文件后将无法返回当前文件并执行当前文件的后续命令)。

pause 运行此句会暂停批处理的执行并在屏幕上显示Press any key to continue...的提示,等待用户按任意键后继续rem 表示此命令后的字符为解释行(注释),不执行,只是给自己今后参考用的(相当于程序中的注释)。

例1:用edit编辑a.bat文件,输入下列内容后存盘为c:\a.bat,执行该批处理文件后可实现:将根目录中所有文件写入 a.txt中,启动UCDOS,进入WPS 等功能。

批处理文件的内容为: 命令注释:@echo off 不显示后续命令行及当前命令行dir c:\*.* >a.txt 将c盘文件列表写入a.txtcall c:\ucdos\ucdos.bat 调用ucdosecho 你好显示"你好"pause 暂停,等待按键继续rem 准备运行wps 注释:准备运行wpscd ucdos 进入ucdos目录wps 运行wps批处理文件的参数批处理文件还可以像C语言的函数一样使用参数(相当于DOS命令的命令行参数),这需要用到一个参数表示符"%"。

%[1-9]表示参数,参数是指在运行批处理文件时在文件名后加的以空格(或者Tab)分隔的字符串。

变量可以从%0到%9,%0表示批处理命令本身,其它参数字符串用%1到%9顺序表示。

例2:C:根目录下有一批处理文件名为f.bat,内容为:@echo offformat %1如果执行C:\>f a:那么在执行f.bat时,%1就表示a:,这样format %1就相当于format a:,于是上面的命令运行时实际执行的是format a:例3:C:根目录下一批处理文件名为t.bat,内容为:@echo offtype %1type %2那么运行C:\>t a.txt b.txt%1 : 表示a.txt%2 : 表示b.txt于是上面的命令将顺序地显示a.txt和b.txt文件的内容。

特殊命令if goto choice for是批处理文件中比较高级的命令,如果这几个你用得很熟练,你就是批处理文件的专家啦。

一、if 是条件语句,用来判断是否符合规定的条件,从而决定执行不同的命令。

有三种格式:1、if [not] "参数" == "字符串" 待执行的命令参数如果等于(not表示不等,下同)指定的字符串,则条件成立,运行命令,否则运行下一句。

例:if "%1"=="a" format a:2、if [not] exist [路径\]文件名待执行的命令如果有指定的文件,则条件成立,运行命令,否则运行下一句。

如: if exist c:\config.sys type c:\config.sys表示如果存在c:\config.sys文件,则显示它的内容。

3、if errorlevel <数字> 待执行的命令很多DOS程序在运行结束后会返回一个数字值用来表示程序运行的结果(或者状态),通过if errorlevel命令可以判断程序的返回值,根据不同的返回值来决定执行不同的命令(返回值必须按照从大到小的顺序排列)。

如果返回值等于指定的数字,则条件成立,运行命令,否则运行下一句。

如if errorlevel 2 goto x2二、goto 批处理文件运行到这里将跳到goto所指定的标号(标号即label,标号用:后跟标准字符串来定义)处,goto语句一般与if配合使用,根据不同的条件来执行不同的命令组。

如:goto end:endecho this is the end标号用":字符串"来定义,标号所在行不被执行。

三、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 yCHOICE /C ab /M "选项 1 请选择 a,选项 2 请选择 b。

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

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

"屏幕上会显示:确认请按 Y,否请按 N,或者取消请按 C。

[Y,N,C]?例:test.bat的内容如下(注意,用if errorlevel判断返回值时,要按返回值从高到低排列):@echo offchoice /C dme /M "defrag,mem,end"if errorlevel 3 goto endif errorlevel 2 goto memif errotlevel 1 goto defrag:defragc:\dos\defraggoto end:memmemgoto end:endecho good bye此批处理运行后,将显示"defrag,mem,end[D,M,E]?" ,用户可选择d m e ,然后if语句根据用户的选择作出判断,d表示执行标号为defrag的程序段,m表示执行标号为mem的程序段,e表示执行标号为end的程序段,每个程序段最后都以goto end将程序跳到end标号处,然后程序将显示good bye,批处理运行结束。

相关文档
最新文档