BAT 批处理脚本教程(详细篇脚本之家补充)

2019-01-29 20:34:52王振洲

第一层意思:返回批处理所在绝对路径
例子:

@echo off
echo %0
pause

保存为test.BAT放在桌面运行,会显示如下结果
"C:Documents and SettingsAdministrator桌面test.bat"
他把当前批处理执行的所在路经打印出来了,这就是返回批处理所在绝对路径的意思
第二层意思:无限循环执行BAT
例子:

@echo off
net user
%0

保存为BAT执行,他就会无限循环执行net user这条命令,直到你手动停止.
龙卷风补充:其实%0就是第一参数%1前面那个参数,当然就是批处理文件名(包括路径)。
以上就是批处理中的一些系统变量,另外还有一些变量,他们也表示一些功能,
FOR命令中的那些就是,FOR变量已经说过,就不讲了.

二、自定义变量

故名思意,自定义变量就是由我们来给他赋予值的变量
要使用自定义变量就得使用set命令了,看例子.

@echo off
set var=我是值
echo %var%
pause

保存为BAT执行,我们会看到CMD里返回一个 "我是值"
var为变量名,=号右变的是要给变量的值
这就是最简单的一种设置变量的方法了
如果我们想让用户手工输入变量的值,而不是在代码里指定,可以用用set命令的/p参数
例子:

@echo off
set /p var=请输入变量的值
echo %var%
pause

var变量名 =号右边的是提示语,不是变量的值
变量的值由我们运行后自己用键盘输入!

一、交互界面设计

没啥说的,看看高手设计的菜单界面吧:

@echo off cls title 终极多功能修复 :menu cls color 0A echo. echo ============================== echo 请选择要进行的操作,然后按回车 echo ============================== echo. echo 1.网络修复及上网相关设置,修复IE,自定义屏蔽网站 echo. echo 2.病毒专杀工具,端口关闭工具,关闭自动播放 echo. echo 3.清除所有多余的自启动项目,修复系统错误 echo. echo 4.清理系统垃圾,提高启动速度 echo. echo Q.退出 echo. echo. :cho set choice= set /p choice= 请选择: IF NOT "%choice%"=="" SET choice=%choice:~0,1% if /i "%choice%"=="1" goto ip if /i "%choice%"=="2" goto setsave if /i "%choice%"=="3" goto kaiji if /i "%choice%"=="4" goto clean if /i "%choice%"=="Q" goto endd echo 选择无效,请重新输入 echo. goto cho

只要学完本教程前面的章节,上面的程序应该能看懂了。

二、if…else…条件语句

前面已经谈到,DOS条件语句主要有以下形式
IF [NOT] ERRORLEVEL number command
IF [NOT] string1==string2 command
IF [NOT] EXIST filename command
增强用法:IF [/I] string1 compare-op string2 command
增强用法中加上/I就不区分大小写了!

相关文章 大家在看