中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 如何电脑日期改为date.txt里的日期
作者:
标题: 如何电脑日期改为date.txt里的日期 上一主题 | 下一主题
dslz666
中级用户





积分 233
发帖 117
注册 2007-11-28
状态 离线
『楼 主』:  如何电脑日期改为date.txt里的日期

我有一个软件只能在2008年02月28日运行,
我先把当天的日期保存在d盘date.txt的文件里,然后电脑日期修改到2008-02-28
接着再运行那个软件
在电脑重启后。如何再把日期改为正确的日期

在使用软件前的批处理我会写。
@echo off
date > d:\date.txt
date 2008-02-28
exit

但在电脑重启后,如何把电脑日期改为date.txt里的日期,请大侠们帮帮忙

2008-3-8 11:41
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
422904z
初级用户





积分 74
发帖 37
注册 2007-6-28
状态 离线
『第 2 楼』:  

@echo off
date > d:\date.txt
date 2008-02-28
运行软件。。。
rem 日期改回来
date < d:\date.txt
exit

2008-3-8 11:53
查看资料  发短消息 网志   编辑帖子  回复  引用回复
dslz666
中级用户





积分 233
发帖 117
注册 2007-11-28
状态 离线
『第 3 楼』:  



  Quote:
Originally posted by 422904z at 2008-3-8 11:53 AM:
@echo off
date > d:\date.txt
date 2008-02-28
运行软件。。。
rem 日期改回来
date < d:\date.txt
exit

date < d:\date.txt   这一句好像不行
date.txt内的内容是:
当前日期: 2008-03-08 星期六
输入新日期: (年月日)


在CMD里输入date < d:\date.txt 之后就出现

C:\>date < d:\date.txt
当前日期: 2008-02-28 星期四
输入新日期: (年月日) 当前日期: 2008-03-08 星期六
系统无法接受输入的日期。
输入新日期: (年月日) 输入新日期: (年月日)
系统无法接受输入的日期。
输入新日期: (年月日)

2008-3-8 12:42
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
suntb
高级用户





积分 581
发帖 277
注册 2006-12-23
状态 离线
『第 4 楼』:  

@echo off
date/t > d:\date.txt
date 2008-02-28
运行软件。。。
rem 日期改回来
date < d:\date.txt
exit

2008-3-8 13:20
查看资料  发短消息 网志   编辑帖子  回复  引用回复
lovelymorning
初级用户





积分 131
发帖 72
注册 2008-2-24
状态 离线
『第 5 楼』:  

@echo off
set row=0
setlocal enabledelayedexpansion
for /f "tokens=2" %%i in (d:\date.txt) do (
set v=%%i
set /a row=!row!+1
if !row! equ 1 date !v!
)
pause

2008-3-8 14:09
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
lovelymorning
初级用户





积分 131
发帖 72
注册 2008-2-24
状态 离线
『第 6 楼』:  

也可以使用下面这种方法
@echo off
setlocal enabledelayedexpansion
for /f "tokens=2" %%i in (d:\date.txt) do (
set v=%%i
if defined v goto date
)
:date
date !v!
pause

两种方法都可以

原理很简单,用for来截取date文本第一行中的第二个字符,取到就跳出循环

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





积分 233
发帖 117
注册 2007-11-28
状态 离线
『第 7 楼』:  

谢谢 lovelymorning  问题已解决

2008-3-8 18:45
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
HAT
版主





积分 9023
发帖 5017
注册 2007-5-31
状态 离线
『第 8 楼』:  

建议楼主感谢一下4楼,呵呵。

2008-3-9 21:29
查看资料  发短消息 网志   编辑帖子  回复  引用回复

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


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



论坛跳转: