前端之家收集整理的这篇文章主要介绍了
set基本用法,
前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
在 SET 命令中
添加了两个新命令行开关: SET /A expression SET /P variable=[promptString] /a 参数可以让set
支持数学符号进行数学运算(以下优先级递减) () - 分组 ! ~ - - 一元运算符 * / % - 算数运算符 + - - 算数运算符 << >> - 逻辑移位 - 按位“与” ^ - 按位“异” | - 按位“或” = *= /= %= += -= - 赋值 &= ^= |= <<= >>=,- 表达式分隔符 【例】set /a var=(2+3)*5 set /a a=1+1,b=2+1,c=3+1【此处注意“,”的
用法】 echo %a% %b% %c% set /a var1=c,var2=vb,var3=java【此为
错误命令,无法依次赋值】 set /a var*=2 等同于set /a var=%var%*2 /p命令开关允许将变量设成
用户输入的一行输入。读取输入之前,
显示指定的promptString(可以不指定) set
截取字符串: %Var:~start,len%【从0开始】 【例】 @echo off set srcString=www.baidu.com echo
截取前: %srcString% set destString=%srcString:~4,5% echo
截取后: %destString% pause
截取倒数len个字符 %var:~-len% 【例】 @echo off set srcString=www.baidu.com echo
截取前: %srcString% set destString=%srcString:~-4% echo
截取后: %destString% pause
截取从第一位开始,倒数第len位结束的值 %var:~0,-len% 【例】 @echo off set srcString=www.baidu.com echo
截取前: %srcString% set destString=%srcString:~0,-10% echo
截取后: %destString% pause echo %var:~begin% 【
显示var中第begin个字符以后的所有字符】 echo %var:~begin,len% 【
显示var第begin个符以后的len的字符】 echo %var:~-len% 【
显示var最后len个字符】 echo %var:~begin,-len% 【
显示var中从begin开始,除了最后len个字符的其他字符,相 当于掐头去尾】 set var= 【取消变量】 set设置的变量在if和for的复合语句里是一次性全部替换的 【例】 @echo off set p=aaa if %p%==aaa ( echo %p% echo execute here! set p= set p=bbb echo %p% )【p的值不会再改变】
输出:aaa execute here! aaa 读取if语句时已经将所有的%p%替换为aaa,这里说的“替换”,在/?帮助中就是“扩充”,“环境变量扩充”,可以启用“延缓环境变量扩充”,用!来引用变量,即!变量名! 上述例子可改成: 【例】 @echo off setlocal enabledelayedexpansion set p=aaa if %p%===aaa ( echo %p% echo execute here! set p= set p=bbb echo !p! ::注意这里用的是"!" )
输出:aaa execute here! bbb
原文链接:/vb/260976.html