批处理高手进~有关参数问题

来源:百度知道 编辑:UC知道 时间:2024/05/28 03:51:41
哪位能给我讲解一下关于批处理中参数的使用方法和类型,最好能给个例子,比方说我想判断现在时间是否是15:00,主要是想知道参数的用法和类型。
谢谢各位了!

判断是否是15点00:
@echo off
if "%time:~0,2%%time:~3,2%"=="1500" (echo yes)else (echo no)
pause

解释:
%time:~0,2%截取了time函数返回值的前两位即小时数,%time:~3,2%截取去掉前三位剩下的前两位即分钟数。
=============================原创教程===============================
1:
例子:
echo %random%
pause
将会显示一个5位的随机数,但是
echo %random:~2%
pause
将会显示一个3位的随机数

例子:
现在的时间是
15:28:15:15
echo %time:~2%
pause
将会显示:28:15:15
意思就是~N会去掉将要显示的字符串的前n位数。

例子:
echo %time:~1,3%
pause
上面的例子会显示5:2,这时因为~1去掉了小时的十位1,后面的3代表显示用~1处理后的剩下的前三位。
例子:
@echo off
set /a aa=1234567890
echo %aa:~1,3%
pause
上面的例子会显示234,这说明这种方法可以截取指定字符,可怜的是只对数字和标点有效,连字母都无效。
例子:
@echo off
set /a aa=1234567890
echo %aa:~-3%
pause
上面例子会显示890,意思就是他截取了数字的尾。