中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-08-05 11:17
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 自动更改由BIOS掉电引起的年分错误 查看 646 回复 6
楼 主 自动更改由BIOS掉电引起的年分错误 发表于 2007-07-12 10:00 ·  中国 湖南 衡阳 电信
中级用户
★★
积分 322
发帖 144
注册 2007-01-10 13:00
19年会员
UID 76062
性别 男
状态 离线

@echo off
@Rem EditDate
@Rem 以下所有的2007可以更改.只要符合年份的格式要求就行了.
@Date /t > a.txt
@for /f "tokens=1" %%m in (a.txt) do set mm=%%m
@Echo %mm% > a.txt
@for /f "tokens=1 delims=-" %%a in (a.txt) do set aa=%%a
@for /f "tokens=2 delims=-" %%b in (a.txt) do set bb=%%b
@for /f "tokens=3 delims=-" %%c in (a.txt) do set cc=%%c
::对比年份,当年份超越2007年则自动改回来
@if %aa% GTR 2007 goto EditTime
::对比年份,当年分少于2007年则运行修改
@if %aa% LSS 2007 goto EditTime
@goto End
:EditTime
::修改系统时间
@date 2007-%bb%-%cc%
:End
@del a.txt



保存放到启动里就OK了
2 发表于 2007-07-12 10:03 ·  中国 湖南 衡阳 电信
中级用户
★★
积分 322
发帖 144
注册 2007-01-10 13:00
19年会员
UID 76062
性别 男
状态 离线
这个暂时只能改年份
具体时间不能在自己的系统里得到
必须上网获取

有高手能写个获取具体时间的P吗?
3 发表于 2007-07-12 10:21 ·  中国 江苏 镇江 电信
中级用户
★★
积分 219
发帖 82
注册 2005-10-29 10:56
20年会员
UID 44240
状态 离线
我觉的意义不大,还不如用net time去同步时间呢
www.jastyg.com
www.efengchi.com
4 发表于 2007-07-13 19:48 ·  中国 湖南 衡阳 电信
中级用户
★★
积分 322
发帖 144
注册 2007-01-10 13:00
19年会员
UID 76062
性别 男
状态 离线
我在网吧上网就遇到过这种情况

时间一下到2095年了

导致QQ登陆失败

QQ又没给什么错误提示

知道的改回来就OK了

不知道的搞半天都不知道怎么回事

整天喊网管

这个程序是我在网吧系统的启动里找到的

网吧的启动里还有一个BAT是绑定网卡的
5 发表于 2007-07-14 00:10 ·  中国 广西 玉林 博白县 电信
金牌会员
★★★★
积分 3,687
发帖 1,467
注册 2005-08-08 12:00
20年会员
UID 44210
状态 离线
按LZ要求应该是XP的:
@echo off
if "%date:~0,4%" == "2007" exit
date 2007-%date:~5,5%
exit

或者直接:
@echo off
date 2007-%date:~5,5%
exit
6 发表于 2007-07-14 13:26 ·  中国 湖南 衡阳 电信
中级用户
★★
积分 322
发帖 144
注册 2007-01-10 13:00
19年会员
UID 76062
性别 男
状态 离线
zh159兄给的代码真的太爽了
一句话就达到目的了

真佩服
7 发表于 2007-07-14 13:40 ·  中国 湖南 衡阳 电信
中级用户
★★
积分 322
发帖 144
注册 2007-01-10 13:00
19年会员
UID 76062
性别 男
状态 离线
干脆BAT都不要了
直接一个快捷方式

cmd.exe /c date 2007%date:~4,6%
论坛跳转: