bat语法 系统 (重点变量).doc

  1. 1、本文档共8页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
bat语法 系统 (重点变量)

脚本语言-BAT 1. 概述 1.1 简介 BAT(批处理文件)就是将一条条命令放在文本里,然后批量执行。 1.2 开发工具 记事本或者EditPlus,但无法调试。虽然有第三方的IDE,也可以调试,但用起来都不顺手。 1.3 其它 ?? 打开命令提示符:开始-运行-cmd.exe ?? 配置命令提示符:开始-运行-regedit.exe 注册表项HKEY_CURRENT_USER\Console,开启QuickEdit快速编辑 2. 语法 2.1 变量 BAT的世界里一切皆命令,却没有函数的概念,所以和其它语言相比,其对变量使用和处理就比较麻烦。 2.1.1 变量声明和赋值 ?? 声明并赋值(字符串)(默认) set /P var=[string] ?? 声明并赋值(数字) set /A expression ?? 查看已定义的变量 set [var] ?? 销毁变量 set var= ?? 指明变量的作用域 整个bat(默认) 语句块(setlocal/endlocal) 2.1.2 变量使用 ?? 引用单个变量 %var% ?? 字符串连接 %var%%var% ?? 字符串截取 %var:~10,5%,偏移10个字符后,取其后5个字符,类似substring %var:~0,5%,取左边的5个字符,类似left(var,5) %var:~-5%,取右边的5个字符,类似right(var,5) ?? 字符串替换 %var:str1=str2%,将变量var中,含有str1的字符替换为str2,类似replace ?? 类似js里的eval(通常用于BAT的代码混淆实现简单的加密) set var=dir %var% 2.1.3 系统变量 ?? %DATE% 用跟 DATE 命令同样的格式扩展到当前日期。 ?? %TIME% 用跟 TIME 命令同样的格式扩展到当前时间。 ?? %RANDOM% 扩展到 0 和 32767 之间的任意十进制数字。 ?? %ERRORLEVEL% 扩展到当前 ERRORLEVEL 数值。 ?? 环境变量 使用set查看 2.2 流程控制 2.2.1 if ?? 判断上一个命令的返回值 IF [NOT] ERRORLEVEL number command ?? 判断变量的值(字符串比较) IF [NOT] string1==string2 command ?? 判断变量的值(数字比较) IF %ERRORLEVEL% LEQ 1(EQU:等于、NEQ:不等于、LSS:小于、LEQ:小于或等于、GTR:大于、GEQ:大于或等于) ?? 判断文件是否存在 IF [NOT] EXIST filename command 2.2.2 goto ?? 使用 goto label ?? 声明 :label 2.2.3 pause 暂停批处理执行,并等待用户按任意键后继续 2.2.4 call 调用另一个批处理文件,等子批处理执行完后,返回主批处理并继续执行后续命令(如果不用call而直接调用别的批处理文件,那么将无法返回)。 2.2.5 for ?? 对一个set进行操作(可以是使用通配符后的文件、或指定的列表)(使用空格或逗号分隔) FOR %variable IN (set) DO command [command-parameters] ?? /L选项(使用数字作为种子) FOR /L %variable IN (start,step,end) DO command [command-parameters] ?? /F选项(它能够对字符串进行操作,也能够对命令的返回值进行操作,还可以访问硬盘上的ASCII码文件) FOR /F [options] %variable IN (string) DO command [command-parameters] FOR /F [options] %variable IN (command) DO command [command-parameters] FOR /F [options] %variable IN (file-set) DO command [command-parameters] 在for循环中,当一个变量被多次赋值时,%var%所获取的仅仅是var第一次被赋予的值。要想刷新var的值,就必须首先通过命令setlocal enabledelayedexpansion来开启延迟变量开关,然后用!var!来获取var的值(感叹号!是变量百分号%的强化版)。 2.3 管道重定向 操作符 ?? 将命令输出写入到文件或设备(例如打印机)中,而不是写在命令提示符窗口中 示例1:echo 写到文件的文字 文件.txt(若文件.txt不存在就创建,若

文档评论(0)

jgx3536 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

版权声明书
用户编号:6111134150000003

1亿VIP精品文档

相关文档