标题: [其他] 批处理变量的使用 [打印本页]
作者: kuzo 时间: 2008-3-4 15:26 标题: 批处理变量的使用
::当前日期
set iCurMonth=%date:~5,2%
if %iCurMonth%=="03" set %iCurMonth%="三月"
echo %iCurMonth%
显示结果总是“03”
即使
if NOT %iCurMonth%=="03" set %iCurMonth%="三月"
echo %iCurMonth%
显示结果也是“03”
请问一下,批处理中变量怎么使用。
[ 本帖最后由 kuzo 于 2008-3-4 15:28 编辑 ]
作者: 随风 时间: 2008-3-4 15:45
第一、
你的代码中if %iCurMonth%=="03" set %iCurMonth%="三月"
少写了一对引号 if "%iCurMonth%"=="03" set %iCurMonth%="三月"
第二、
变量%iCurMonth%的值是03
但是set %iCurMonth%="三月"这句的效果是设 变量%iCurMonth%的值即:03="三月"
结果%iCurMonth%的值当然不会改变。
若改为echo %03% 就可以显示"三月"了,但又因为 变量名是数字开头的话,不能用%%来引用变量,所以还是错的,在变量名前面加一个非数字的字符就可以了。
如:- @echo off
- set iCurMonth=%date:~5,2%
- if "%iCurMonth%"=="03" set _%iCurMonth%="三月"
- call echo %%_%iCurMonth%%%
- pause>nul
复制代码
作者: 浅默 时间: 2008-3-8 20:41
原帖由 kuzo 于 2008-3-4 15:26 发表
::当前日期
set iCurMonth=%date:~5,2%
这位朋友你的这句后面多了个空格。
还有我想这样的行不行呢?
-
- @echo off
- set iCurMonth=%date:~5,2%
- if "%iCurMonth%"=="03" set iCurMonth="三月"
- echo %iCurMonth%
- pause>nul
复制代码
欢迎光临 批处理之家 (http://bathome.net./) |
Powered by Discuz! 7.2 |