例子:
@echo off
set var=我是值
echo %var%
pause
请看 set var=我是值 ,这就是BAT直接在批处理中设置变量的方法!
set 是命令 var是变量名 =号右边的"我是值"是变量的值
在批处理中我们要引用这个变就把var变量名用两个%(百分号)扩起来,如%var%
这种SET语法只能直接在BAT代码的提前赋予变量的值,有时候我们需要提供一个交互界面,让
用户自己输入变量的值,然后我们在来根据这个值来做相应操作,现在我就来说说这SET的这
种语法,只需要加一个"/P"参数就可以了!
例子:
@echo off
set /p var=请输入变量的值:
if %var% == 1 echo 您输入了 1 ~_~
pause
set /p 是命令语法 var是变量名 =号右边的"请输入变量的值: ",这个是提示语,不是变
量的值了!
运行后,我们在提示语后面直接输入1,就会显示一行您输入了 1 ~_~ ,输入别的就没有任何反
映!
好了,先回顾到这,现在讲SET其他功能
使用set /?查看SET的帮助我们发现SET除了我上面讲的
SET [variable=[string]]
SET /P variable=[promptString]
这两种语法外,还有如下几种语法:
SET /A expression
环境变量替换已如下增强:
%PATH:str1=str2%
%PATH:~10,5%
%PATH:~-10%
%PATH:~0,-2%
这机种语法有什么用处呢?现在我们来一个个讲解他们!
SET /A expression
/A 命令行开关指定等号右边的字符串为被评估的数字表达式。该表达式
评估器很简单并以递减的优先权顺序支持下列操作:
() - 分组
! ~ - - 一元运算符
* / % - 算数运算符
+ - - 算数运算符
<< >> - 逻辑移位
& - 按位“与”
^ - 按位“异”
| - 按位“或”
= *= /= %= += -= - 赋值
&= ^= |= <<= >>=
, - 表达式分隔符
上面这些是系统帮助里的内容,看着是不是有点晕,没关系我来简单解释一下:
set的/A参数就是让SET可以支持数学符号进行加减等一些数学运算!
现在开始举例子介绍这些数学符号的用法:
看例子 这里的例子请直接在CMD下拷贝命令运行,不需要保存为BAT!
set /a var=1 + 1
set /a 语法, var变量名 1 + 1 数学式子
拷贝运行后会直接显示一个2,或者运行完后我们输入echo %var%,也是二,这就是
一个简单的加法运算!
set /a var=2 - 1 结果是多少呢?如果你看不到结果就echo %var%.....
set /a var=2 * 2 乘法运算
set /a var=2 / 2 除法运算
set /a var=(1+1) + (1+1) 结果等于4 看得懂吧!
set /a a=1+1,b=2+1,c=3+1 运行后会显示一个4,但我们用
echo %a% %b% %c%后看结果,会发现其他数学运算也有效果!,这就是"斗"号的
作用!
有时候我们需要直接在原变量进行加减操作就可以用这种语法
set /a var+=1 这样的语法对应原始语法就是set /a var = %var% + 1
都是一样的结果,在原变量的值上在进行数学运算,不过这样写简单一点
在来一个:
set /a var*=2
其他都这么用,只要帮助里有这个语法!
另外还有一些用逻辑或取余操作符,这些符号,按照上面的使用方法会报错的
比如我们在CMD里输入set /a var=1 & 1 "与运算",他并不会显示为1,而是报错,
为什么?对于这样的"逻辑或取余操作符",我们需要把他们用双引号引起来,看例子
set /a var= 1 "&" 1 这样结果就显示出来了,其他逻辑或取余操作符用法
set /a var= 1 "+" 1 异运算
set /a var= 1 "%" 1 取模运算
set /a var= 2 "<<" 2 次方运算
set /a var= 4 ">>" 2 这个不太记得数学里的叫法....
还有几个数学不太行,搞不清楚了....不列出来了,
这些符号也可以用&= ^= |= <<= >>= 这样的简单用法如
set /a var"&=" 1 等于set /a var = %var% "&" 1 注意引号
好符号说到这,现在说%PATH:str1=str2%
这个是替换变量值的内容,看例子
@echo off
set a= bbs.verybat.cn
echo 替换前的值: "%a%"
set var=%a: =%
echo 替换后的值: "%var%"
pause
对比一下,我们发现他把变量%a%的空格给替换掉了,从这个例子,我们就可以发现
%PATH:str1=str2%这个操作就是把变量%PATH%的里的str1全部用str2替换
比如我们把上面的例子改成这样
@echo off
set a=bbs.verybat.cn
echo 替换前的值: "%a%"
set var=%a:.=伤脑筋%
echo 替换后的值: "%var%"
pause
解释set var=%a:.=伤脑筋%
set命令 var变量名 字a是要进行字符替换的变量的值,"."为要替换的值,
"伤脑筋"为替换后的值!
执行后就会把变量%a%里面的"."全部替换为"伤脑筋"
这就是set的替换字符的很好的功能!先讲到这
%PATH:~10,5% 这个什么意思,看例子:
@echo off
set a=bbs.verybat.cn
set var=%a:~1,2%
echo %var%
pause
执行后,我们会发现只显示了"bs"两个字母,我们的变量%a%的值不是为bbs.verybat.cn吗
怎么只显示了第2个字母和第3个字母"bs",分析一结果我们就可以很容易看出
%PATH:~10,5%就是显示变量PATH里指定几位的值!
分析set var=%a:~1,2%
set命令 var变量值 a要进行字符操作的变量 "1"从变量"a"第几位开始显示 "2"显示几位
和起来就是把变量a的值从第一位开始,把后两位赋予给变量var
就样因该明白了吧~
其他两种语法
%PATH:~-10%
%PATH:~0,-2%
他们也是显示指定变量指定几位的值得的意思
%PATH:~-10% 例子
@echo off
set a=bbs.verybat.cn
set var=%a:~-3%
echo %var%
pause
这个就是把变量a倒数3位的值给变量VAR
当然我们也可以改成这样
@echo off
set a=bbs.verybat.cn
set var=%a:~3%
echo %var%
pause
这个就是把变量a的前3位的值给变量VAR
%PATH:~0,-2% 例子
@echo off
set a=bbs.verybat.cn
set var=%a:~0,-3%
echo %var%
pause
执行后,我们发现显示的是"bbs.verybat",少了".cn"
从结果分析,很容易分析出,这是把变量a的值从0位开始,
显示变量a总位数-3的位的值得(我们给变量a的的值bbs.verybat有11位,11-3=8),这样他就
只显示从第0位开始到第8位的值,并赋予给变量var
如果改成这样
@echo off
set a=bbs.verybat.cn
set var=%a:~2,-3%
echo %var%
pause
那么他就是显示从第2位开始到第8位的值,并赋予给变量var
抄袭路径: http://blog.163.com/zxzx5200@126/blog/static/18612884200801632011512/
相关推荐
* 用 set 命令进行字符串处理:set命令可以用于进行字符串替换和截断。 五、if 命令讲解 IF命令用于判断条件语句。 * 第一种用法:IF [NOT] ERRORLEVEL number command * 第二种用法:IF [NOT] string1==string2 ...
### DOS批处理常用命令及用法详解 #### 1. Echo 和 @ 回显控制命令 **命令介绍:** - `echo [文本]`:显示指定的文本字符串。 - `echo off`:关闭命令提示符窗口中的命令回显。 - `echo on`:开启命令提示符窗口中...
本资料包“dos命令的用法详解.zip”显然专注于介绍如何使用DOS命令来执行各种操作,这对于理解计算机底层工作原理以及进行系统管理至关重要,特别是对于学习汇编语言的用户来说,熟悉DOS命令能更好地提升编程效率。...
10. **HELP**:显示可用的DOS命令及其用法。 二、批处理命令 批处理是DOS环境下一种自动化执行多个命令的方式,通过编写批处理文件(扩展名为`.bat`或`.cmd`)实现。批处理命令通常包括以下内容: 1. **@echo off...
本文将详细介绍DOS命令集中常见的命令及其用法。 #### 二、常用DOS命令详解 ##### 1. ASSOC - 设置文件扩展名关联 - **功能**:设置或查看文件扩展名与应用程序之间的关联。 - **语法**:`assoc [.ext]=appname` ...
标题中提到的"dos设置分辨率外部命令"是指在DOS命令行中使用非内置的工具来调整屏幕显示的分辨率。在这种情况下,我们使用的工具是一个名为`SETRES.EXE`的外部程序。这个程序通常需要被解压到系统目录,例如`C:\...
DOS 命令大全手册是 Windows 操作系统中的一份命令参考手册,涵盖了各种 DOS 命令的使用方法和参数设置。该手册将帮助用户快速掌握 DOS 命令的使用,提高工作效率和生产力。 网络命令 1. `net use` 命令:用于映射...
### DOS命令用法与详解 本文档旨在详细介绍Windows XP系统中的DOS命令,包括命令的语法、用法以及具体的示例。通过这些内容,读者可以更深入地理解并掌握DOS命令的操作方法。 #### 1. **Net Use 命令** - **语法*...
FOR命令是DOS命令中的一个重要组成部分,主要用于循环处理一系列文件或者执行一系列任务。FOR命令支持多种语法结构和参数,使得它非常灵活且功能强大。 ##### 基本格式 ```plaintext FOR /参数 %variable IN (set) ...
在高级篇中,我们将深入探讨一系列重要的DOS命令,这些命令对于任何IT专业人员在网络管理方面都至关重要。通过理解并熟练运用这些命令,你可以有效地诊断网络问题、优化网络性能以及进行日常维护工作。 首先,我们...
本文档旨在提供一系列DOS(Disk Operating System)命令的详细介绍与使用方法,帮助用户高效地学习并掌握DOS的基本操作。以下是对文档中提到的部分命令进行的详细解读: #### 1. **Net Use** - **格式**: - `...
20. SET命令:显示、设置或删除Windows环境变量。例如,"SET PATH=%PATH%;C:\NewPath"将C:\NewPath添加到PATH环境变量中。 21. TYPE命令:显示文本文件的内容。例如,"TYPE config.txt"显示config.txt文件的内容。 ...
### DOS批处理命令详解 #### 一、Echo 命令 **功能**: Echo 命令用于在命令行窗口中显示消息。 **语法**: `echo [{on|off}] [message]` - `on` 或 `off`: 控制是否显示后续的命令提示符。 - `message`: 显示的消息...
在深入探讨DOS命令及其具体用法之前,我们先简要了解一下DOS(磁盘操作系统)的历史背景。DOS是20世纪80年代至90年代初个人计算机上广泛使用的操作系统之一,由微软公司开发并授权给IBM使用。DOS以命令行界面为主,...
SET命令用于显示、设置或删除cmd.exe环境变量。 SETLOCAL命令用于开始批处理文件中环境改动的本地化操作。SHIFT命令用于更改批处理文件中可替换参数的位置。 SORT命令用于对输入进行分类。START命令用于启动另一个...
本文将深入解析一系列DOS常用命令,帮助读者更好地掌握这些基本操作,从而在实际工作中更加得心应手。 #### 目录管理与查看命令 1. **dir** - **作用**: 查看当前目录或指定目录下的文件列表。 - **用法**: `...
在编程环境中获取DOS命令返回结果,可以使用以下方法: 1. **批处理文件**:创建一个.bat文件,将DOS命令写入其中,然后运行这个文件。批处理文件的输出可以通过重定向(>`或)到文本文件中,以便后续读取。 2. **...
一、set 命令基本用法 set 命令是 Windows 命令行中一个非常重要的命令,它可以用来设置、显示或删除环境变量。基本语法为:SET [variable=[string]],其中 variable 是环境变量名,string 是要赋给变量的字符串。 ...
批处理(Batch Processing)在DOS操作系统中是一种高效自动化执行一系列命令的方法,尤其适用于需要重复执行相同操作的情况。通过编写批处理脚本(.bat文件),用户可以简化日常任务,提高工作效率。下面我们将深入...
### Windows系统常用DOS命令详解 在Windows操作系统中,DOS命令行界面提供了一系列强大的工具,帮助用户管理和操作计算机系统。下面将详细解释几个常用的DOS命令及其功能,包括`...`获取更详细的使用方法和参数信息。