欢迎来到天天文库
浏览记录
ID:47675107
大小:79.95 KB
页数:37页
时间:2020-01-26
《★bat脚本学习》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、★Bat脚本学习2015-01-0514:13 1652人阅读 评论(0) 收藏 举报版权声明:本文为博主原创文章,未经博主允许不得转载。基础部分:======================================================================一、基础语法:1.批处理文件是一个“.bat”结尾的文本文件,这个文件的每一行都是一条DOS命令。可以使用任何文本文件编辑工具创建和修改。2.批处理是一种简单的程序,可以用if和goto来控制流程,也可以使用for循环。3.批处理的编程能力远不如C语
2、言等编程语言,也十分不规范。4.每个编写好的批处理文件都相当于一个DOS的外部命令,把它所在的目录放到DOS搜索路径(path)中,即可在任意位置运行。5.C:AUTOEXEC.BAT是每次系统启动时都会自动运行的,可以将每次启动时都要运行的命令放入该文件中。6.大小写不敏感(命令符忽略大小写)7.批处理的文件扩展名为.bat或.cmd。8.在命令提示下键入批处理文件的名称,或者双击该批处理文件,系统就会调用Cmd.exe来运行该文件。二、参数:1)系统参数%SystemRoot%===C:WINDOWS(%windir%同样)
3、%ProgramFiles%===C:ProgramFiles%USERPROFILE%===C:DocumentsandSettingsAdministrator(子目录有“桌面”,“开始菜单”,“收藏夹”等)%APPDATA%===C:DocumentsandSettingsAdministratorApplicationData%TEMP%===C:DOCUME~1ADMINI~1LOCALS~1Temp(%TEM%同样)%APPDATA%===C:DocumentsandSettingsAdminis
4、tratorApplicationData%OS%===Windows_NT(系统)%Path%===%SystemRoot%system32;%SystemRoot%;%SystemRoot%System32Wbem(原本的设置)%HOMEDRIVE%===C:(系统盘)%HOMEPATH%===DocumentsandSettingsAdministrator::枚举当前的环境变量setlocalenabledelayedexpansionFOR/F"usebackqdelims=="%%iIN(`set`)DO@e
5、cho%%i!%%i!2)传递参数给批处理文件%[1-9]表示参数,参数是指在运行批处理文件时在文件名后加的以空格(或者Tab)分隔的字符串。变量可以从%0到%9,%0表示批处理命令本身,其它参数字符串用%1到%9顺序表示。Sample:calltest2.bat"hello""haha"(执行同目录下的“test2.bat”文件,并输入两个参数)在“test2.bat”文件里写:echo%1(打印:"hello")echo%2(打印:"haha")echo%0(打印:test2.bat)echo%19(打印:"hello"9)三、
6、批处理基本命令0.help命令/?命令语法:命令/?可显示此命令的帮助信息Sample:type/?>>tmp.txt(把type命令的帮助信息写入到tmp.txt文件里)Sample:helptype(显示跟“type/?”一样)1.Echo命令语法:echo[{on
7、off}][message]ECHO[ON
8、OFF]打开回显或关闭回显功能。ECHO显示当前回显设置。ECHO[message]显示信息。echooff表示在此语句后所有运行的命令都不显示命令行本身;默认是on,on时会显示如:C:文件夹路径>命令行。在实际应用中
9、我们会把这条命令和重定向符号(也称为管道符号,一般用>>>^)结合来实现输入一些命令到特定格式的文件中。Sample:echooffSample:echohelloworld(显示出“helloworld”)Sample:echoWindowsRegistryEditorVersion5.00>c:setupreg.reg(此前还没有setupreg.reg这个文件)Sample:echo"SourcePath"="D:\Win2003\">>c:setupreg.reg(追加内容进setupreg.reg这个文件)2.@命
10、令表示不显示@后面的命令,(在入侵过程中自然不能让对方看到你使用的命令啦)@与echooff相象,但它是加在每个命令行的最前面,表示运行时不显示这一行的命令行(只能影响当前行)。Sample:@echooff(此语句常用于开头,表示不
此文档下载收益归作者所有