中国DOS联盟论坛

中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --
联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟
中国DOS联盟论坛
现在时间是 2026-08-05 17:53
48,039 主题排行 / 350,124 发帖 / 今日 2 篇 / 48,251 会员排行
DOS批处理 & 脚本技术(批处理室) » [讨论]让系统定时提醒你:该休息啦!
可打印版本  1,102 / 7
第1楼 icyheart 发表于 2007-08-23 17:33
中级用户 发帖 81 积分 216
[讨论]让系统定时提醒你:该休息啦!
@echo off
reg add HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /v 该休息啦.bat /t reg_sz >nul
@echo off
:start
systeminfo | find "系统启动时间">"%cd%\time.txt"
for /f "delims=: tokens=2" %%i in (time.txt) do set a=%%i
set var=%a:~2,1%
if var geq2 (goto alert) else goto start
:alert
echo msgbox "该休息啦">alert.vbs
call alert
del /f/q alert.vbs,time.txt
pause

这是我下午刚写的,本想弄的好了,直接发到原创呢,可是想了半天有个地方总是过不去,就先发到这儿啦,set var=%a:~2,1%这句好像没有起到作用,以至于使下面的判断不管是大于2还是小于2,都是一样结果,大家看看是哪出错了呢?
==================================

就这样啦

[ Last edited by icyheart on 2007-8-23 at 10:27 PM ]
第2楼 youxi01 发表于 2007-08-23 18:39
高级用户 发帖 247 积分 846 来自 湖南==》广东
呵呵,想法有意思。
不过,可能我还没休息,但电脑已经“休息”了。
第3楼 guxingyibei 发表于 2007-08-23 20:47
初级用户 发帖 32 积分 68
问题还真有呢!
按着楼主的思路修改了下
@echo off
:start
for /f "delims=: tokens=2" %%i in ('systeminfo ^| findstr "系统启动时间"') do set a=%%i
set var=%a:~9,1%
if %var% gtr 2 (goto alert) else goto start
:alert
echo msgbox "该休息啦">alert.vbs
call alert
del /f/q alert.vbs,time.txt
pause

应该是大于两个小时再提示吧!
第4楼 icyheart 发表于 2007-08-23 22:32
中级用户 发帖 81 积分 216
嗯 你说的很对,呵呵谢谢啦,向你们学习
第5楼 wjh6088 发表于 2007-08-23 23:29
初级用户 发帖 39 积分 85
太耗资源了吧??
第6楼 vus520 发表于 2007-09-07 09:27
初级用户 发帖 15 积分 34
马上测试下下,希望有好心人能把保育修复好一点!
第7楼 slore 发表于 2007-09-07 13:12
铂金会员 发帖 2,478 积分 5,212
还不如算出2小时后的时间直接交给at去处理……CMD挂起2小时!
第8楼 scriptor 发表于 2007-09-07 13:54
银牌会员 发帖 555 积分 1,187
Originally posted by icyheart at 2007-8-23 17:33:
@echo off
reg add HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /v 该休息啦.bat /t reg_sz >nul
@echo off
:start
systeminfo | find "系统启动时间">&qu ...



个人觉得每次调用 systeminfo是不太好的
为什么不直接让程序两个小时后运行起来
让它提醒呢?
这样不很简单?

没有必要搞一个循环吧,耗费资源的.
[ 联系联盟系统管理团队 - 中国DOS联盟 - 标准版 ]
Sponsored by ifanr Inc | © 2001–2023