无忧启动论坛

标题: 怎样把txt中的数值读出来并赋值给变量? [打印本页]

作者: wjgyz740526    时间: 2007-3-21 14:05
标题: 怎样把txt中的数值读出来并赋值给变量?
cmd里怎样才能把一个txt文件中的数字读出来并赋值给变量?这个txt文件中只有一行数字


求教,谢谢
作者: lxl1638    时间: 2007-3-21 17:49
老毛呢?CALL老毛。
全中国呼唤老毛,亚非拉呼唤老毛,全世界呼唤老毛!
作者: wjgyz740526    时间: 2007-3-21 19:14
我是想让cmd判断日期并在指定日期之后执行特定命令。

我的cmd在第一次运行时会判断是否存在tmp.txt,没有的话就把当前日期生成一个数字(比如20070320)保存在这个tmp.txt文件中,然后每一次运行cmd时判断是否过了一定日期(比如15天),大于15天就提示”XXXXX!“,我的代码如下

@Echo Off
set tm1=%date:~0,4%
set tm2=%date:~5,2%
set tm3=%date:~8,2%
set /a number=%tm1%*365+%tm2%*30+%tm3%
if not exist %windir%:\tmp.txt echo %number%>%windir%:\tmp.txt & goto end
goto begin

:begin
if .....这里涉及到怎样把txt中的数值读出来并且同当前日期转换后的number相比较,不会了

:end

请教达人,多谢
作者: wjgyz740526    时间: 2007-3-22 10:36
顶一下,等待


或者有别的办法也可以啊
作者: gtzhj    时间: 2007-3-22 20:09
:begin
for /f %%i in (%windir%\tmp.txt) do (set /a old=%%i+15)
if %number% GTR %old% echo XXXXX!

另:%windir%后面不要:
作者: wjgyz740526    时间: 2007-3-22 21:25
谢谢楼上的兄弟

我现在的代码:
@Echo Off
set tm1=%date:~0,4%
set tm2=%date:~5,2%
set tm3=%date:~8,2%
set /a number=%tm1%*365+%tm2%*30+%tm3%
if not exist c:\tmp.txt echo %number%>c:\tmp.txt & exit
goto begin

:begin
set /p St=<c:\tmp.txt
set /a number2=%number%-%St%
if %number2% gtr 15 echo 你的使用期限已过15天& pause & exit
echo 您还在使用期,请继续使用
pause & exit


你说的%windir%后面不要什么意思?不写入到一个临时文件怎么来判定时间是否到期呢?

[ 本帖最后由 wjgyz740526 于 2007-3-22 09:28 PM 编辑 ]
作者: gtzhj    时间: 2007-3-22 21:46
if not exist %windir%:\tmp.txt echo %number%>%windir%:\tmp.txt & goto end

上面%windir%后面多了:,%windir%=C:\WINDOWS
作者: wjgyz740526    时间: 2007-3-23 11:43
对,是我替换路径时搞错了,谢谢




欢迎光临 无忧启动论坛 (http://wuyou.net/) Powered by Discuz! X3.3