![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-04 11:49 |
共 48,038 主题排行 / 350,123 发帖 / 今日 0 篇 / 48,251 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » 在98或2000中如何在批文件中取得系统前一天的日期呀? |
| 可打印版本 1,338 / 7 |
| 第1楼 xolbm | 发表于 2005-12-18 21:55 |
| 新手上路 发帖 2 积分 8 | |
|
在98或2000中如何在批文件中取得系统前一天的日期呀? 在98或2000中,比如现在系统时间是20051218,哪如何在批文件中取得系统前一天的日期20051217呀?
|
|
| 第2楼 无奈何 | 发表于 2005-12-19 21:51 |
| 荣誉版主 发帖 356 积分 1,338 | |
|
你这个问题超级复杂,需要考虑当前日期是否是1号,如果是还要考虑上月有多少天,是闰年还是平年。给你2000下一个获取日期的实例,自己尝试完善吧!
|
|
| 第3楼 tigerpower | 发表于 2005-12-19 22:38 |
| 中级用户 发帖 99 积分 377 | |
|
使用GNU date:
.\date -d "-1 day" "+%Y%m%d" 附件 date.zip (18.99 KiB) |
|
| 第4楼 willsort | 发表于 2005-12-19 22:53 |
| 元老会员 发帖 1,512 积分 4,432 | |
|
Re xolbm:
这个问题在不同平台下有不同解答。 在 2000 的 cmd 下,可以将日期换算为距离以前某个日期的相对值,然后对这个值进行运算后,再换算为新日期即可。 在 98 的 command 下,可以使用标记法,即每日运行程序时,标记今日日期,并从前一次标记中取昨日日期。但这种算法要求每日至少运行一次程序。 更通用的方法是使用第三方命令行程序,比如date等,但因此失去了批处理程序脚本程序的特色。 因为这个主题曾经讨论过多次,因此以上方案的代码和程序均可以在以前的旧帖中找到,比如以下链接,所以请善用搜索功能: (已结)如果在WINDOWS下DOS命令行删除N天以前的文件 http://www.cn-dos.net/forum/viewthread.php?tid=16676 |
|
| 第5楼 无奈何 | 发表于 2005-12-19 23:00 |
| 荣誉版主 发帖 356 积分 1,338 | |
Originally posted by tigerpower at 2005-12-19 22:38: 哈哈,换个工具简单许多,UNIX 下的小工具确实够强。 |
|
| 第6楼 xolbm | 发表于 2005-12-20 19:31 |
| 新手上路 发帖 2 积分 8 | |
|
谢谢各位老师的指教!看来要采用批处理程序完成系统时间的加减对我这样的菜鸟是很有困难的了!
再次谢谢各位老师的指教!! |
|
| 第7楼 LiveOnLove | 发表于 2005-12-20 19:51 |
| 中级用户 发帖 161 积分 493 来自 ZHCN | |
|
对啊。上面的批命令我都看晕了。不如直接写个小程序方便。HOHO
|
|
| 第8楼 wynpu | 发表于 2007-04-30 06:17 |
| 新手上路 发帖 3 积分 6 | |
|
太好了,试一试先
|
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |