中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net  论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

游客:  注册 | 登录 | 命令行 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 怎样获得昨天的日期并赋值给一个变量
作者:
标题: 怎样获得昨天的日期并赋值给一个变量 上一主题 | 下一主题
broodwu
初级用户




积分 185
发帖 23
注册 2005-2-27
状态 离线
『楼 主』:  怎样获得昨天的日期并赋值给一个变量

我需要获得昨天的日期,并把这个日期赋给一个变量。 如果今天是2007-08-01,那么昨天的日期2007-07-31怎么获得呢? 要考虑一个月中不同天数,还有闰年的情况。


2007-8-14 16:41
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
zerocq
中级用户




积分 458
发帖 196
注册 2006-10-5
状态 离线
『第 2 楼』:  

vbs中有个dateadd函数很方便


2007-8-14 21:40
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
broodwu
初级用户




积分 185
发帖 23
注册 2005-2-27
状态 离线
『第 3 楼』:  

在论坛上找到输出N天前日期的批处理,稍微改变一下,下面代码中的 date_ 就是昨天的日期 @echo off setlocal enabledelayedexpansion :Main :: 日期可以带星期,但是,必须以年月日的顺序排列 :: 年份必须是四位,否则会出错 set day=%date% set days=0 echo.&echo. ::echo 指定的日期是:%day% set input=1 :: 提取日期 for /f "tokens=1-3 delims=-/. " %%i in ("%day%") do ( set /a sy=%%i, sm=100%%j %% 100, sd=100%%k %% 100 ) set /a sd-=input if %sd% leq 0 call :count set sm=0%sm% set sd=0%sd% set date_=%sy%-%sm:~-2%-%sd:~-2% echo. echo 正在备份 %date_% 的ALOG文件 echo. for /f "tokens=1,2,4*" %%a in ('dir /a-d/od/tc "%d_%" ^| find "%date_%"') do if %%b geq 00:00:00 if not %%b geq 23:59:59 copy %%c d:\test\ echo. pause :count set /a sm-=1 if !sm! equ 0 set /a sm=12, sy-=1 call :days set /a sd+=days if %sd% leq 0 goto count goto :eof :days :: 获取指定月份的总天数 set /a leap="^!(sy %% 4) & ^!(^!(sy %% 100)) | ^!(sy %% 400)" set /a max=28+leap set num=0 set str=31 %max% 31 30 31 30 31 31 30 31 30 31 for %%i in (%str%) do ( set /a num+=1 if %sm% equ !num! set days=%%i&goto :eof ) goto :eof


2007-8-15 14:17
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
wudixin96
银牌会员





积分 1928
发帖 931
注册 2007-1-6
状态 离线
『第 4 楼』:  

自己找到,还修改了。 是否比别人直接给的要有荣耀感? [ Last edited by wudixin96 on 2007-8-15 at 02:31 PM ]


2007-8-15 14:24
查看资料  发短消息  网志   编辑帖子  回复  引用回复
broodwu
初级用户




积分 185
发帖 23
注册 2005-2-27
状态 离线
『第 5 楼』:  

Originally posted by wudixin96 at 2007-8-15 02:24 PM: 自己找到,还修改了。 是否比别人直接给的要有荣耀感? [ Last edited by wudixin96 on 2007-8-15 at 02:31 PM ]
这种感觉实在不明显,总觉得批处理不太好用,语法有点古怪。只是每次要用,不想编程才想起会不会用批处理会简单一点。如果有一种简单易用的,和系统又结合的好的语言,我想我不会用它的。


2007-8-15 17:11
查看资料  发送邮件  发短消息  网志   编辑帖子  回复  引用回复
zh159
金牌会员




积分 3687
发帖 1467
注册 2005-8-8
状态 离线
『第 6 楼』:  

和系统又结合的好的就是VBS了,比批处理简单好多,而且可以和批处理配合得很好




2007-8-15 19:46
查看资料  发短消息  网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: