1.定义变量
set var=[]
变量的基本使用方法为:%var%
 
例如:
set a=100
echo a=%a%
2.查看变量
set [字符串]
若不加任何参数,则输出当前控制台窗口的所有变量
否则显示以<字符串>开头的所有变量
 
3.输出一个字符串,并等待用户输入
set /p var= [提示字符串]
例如:
set /p x= 请输入x的值:
此时用户输入的数据将存储到x
 
4.执行数学表达式
set /a <表达式>
<表达式>中支持的运算符:
()               分组
* / % + -    基本数学计算
<< >>        逻辑移位
&             按位“与”运算
^             按位“异或”运算
|             按位“或”运算
= *= /= %= += -= &= ^= |= <<= >>= 赋值运算
,              表达式分隔符
 
a) <表达式>中可以使用8进制(0开头)10进制(普通数字)16进制数(0x开头);
b) <表达式>中使用变量时,不需要用%var%的格式;
c) 如果要使用< > | & ^等字符,需要使用批处理转义字符“^
 
例子:
@echo off
echo 3^>2
set /a 1+2+3+4*(3+2)
 
set a=10
set /a a+=10
 
set a=0x01
set /a a^<^<1
另外“^”也是批处理中的续行符,类似于C语言中的“\”。
 
5.系统内置变量
%CD% - 当前目录。
%DATE% - 当前日期。
%TIME% - 当前时间。
%RANDOM% - 0 32767 之间的随机数。
%ERRORLEVEL% - 当前 ERRORLEVEL 值。
 
6.批处理中的字符串截取
对于已存在的变量var,有如下格式:
%var:~<start,count>%
部分类似于MFCCStringMid方法。
 
如果start是负值,则只留下绝对值count个字符
如果count是负值,则去掉末尾的绝对值count个字符
省略count,则保留末尾全部字符
 
例子:
set var=aabbccdd
echo %var:~0,2%
这里会输出:aa
echo %var:~4,2%
这里会输出:cc
echo %var:~2,-2%
这里会输出:bbcc
 
7.批处理中的字符串替换
对于已存在的变量var,有如下格式:
%var:strold=strnew%
例子:
set var=aabbccdd
echo %var:aa=xxx%
8.将命令的输出复制给变量
控制台中:
for /f %a in ('date /t') do set var=%a
echo %var%
批处理文件中:
for /f %%a in ('date /t') do set var=%%a
echo %var%

本文链接地址: 批处理中的变量与SET命令
https://blog.qingfengju.com/index.asp?id=276

上一篇: 批处理中的if语句
下一篇: 批处理中的for语句

分类:脚本编程 查看次数:5697 发布时间:2010/1/11 12:37:59