中国DOS联盟

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

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

中国DOS联盟论坛
现在时间是 2026-08-06 11:30
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 求教:批处理的时间处理 查看 768 回复 2
楼 主 求教:批处理的时间处理 发表于 2007-11-17 08:54 ·  中国 广东 东莞 电信
初级用户
积分 30
发帖 13
注册 2007-05-27 21:10
19年会员
UID 89501
性别 男
状态 离线
我给别人做的批处理,基本过程是,运行批处理后,先进行时间判断,如果时间在12月1号后,就进行网卡地址判断,这个可以通过用getmac将网卡地址导入到文本文档里用find查找判断,如果该地址是原地址(预先输入原地址),财程序退出,否则将改过的地址修改回原地址.(实际上就是过了指定时间,程序就不具备修改网卡的功能,并且如果先前已修改了则改回原地址) 如果时间没有到期12月10日,则对网卡进行指定的修改. 在这个批处理里面,网卡的修改我能进行,但是时间的判断我不会,大位能不能帮忙写下代码.


另一方面,大侠们能不能教点,比如我想把程序输入密码,密码是系统当前日期经过一定运算得出,比如**=(系统当前时间20071117*2-5),前面那两个星号就是密码,这样密码每天运行时不会不一样.
2 发表于 2007-11-17 09:22 ·  中国 湖南 娄底 电信
银牌会员
★★★
积分 2,268
发帖 879
注册 2006-12-19 16:23
19年会员
UID 73968
性别 男
状态 离线

@echo off&set ci=3
for /f "tokens=1-3 delims=.-/ " %%a in ("%date%") do (
set /a y=%%a,m=100%%b%%100,d=100%%c%%100
)
set var=%y%-%m%-%d%
set m=0%m%
set d=0%d%
set mm=%y%%m:~-2%%d:~-2%
set /a mm=mm*2-5
:lis
cls
echo 密码为 %mm%
set /p num= 请输入密码,三次错误则退出:
set /a ci-=1
if %ci% equ 0 exit
if not "%num%"=="%mm%" goto lis
cls
if %var% geq 2007-12-1 if %var% leq 2007-12-10 goto loop
echo 过期了。
pause&exit
:loop
echo 有效期内
pause
致精致简!
3 发表于 2007-11-17 11:18 ·  中国 广东 东莞 电信
初级用户
积分 30
发帖 13
注册 2007-05-27 21:10
19年会员
UID 89501
性别 男
状态 离线
大哥可不可以在QQ上指导下啊,352166534
论坛跳转: