Board logo

标题: [讨论]让系统定时提醒你:该休息啦! [打印本页]

作者: icyheart     时间: 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 "系统启动时间">"%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 ]
作者: youxi01     时间: 2007-8-23 18:39
呵呵,想法有意思。
不过,可能我还没休息,但电脑已经“休息”了。
作者: guxingyibei     时间: 2007-8-23 20:47
问题还真有呢!
按着楼主的思路修改了下
@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

应该是大于两个小时再提示吧!
作者: icyheart     时间: 2007-8-23 22:32
嗯 你说的很对,呵呵谢谢啦,向你们学习
作者: wjh6088     时间: 2007-8-23 23:29
太耗资源了吧??
作者: vus520     时间: 2007-9-7 09:27
马上测试下下,希望有好心人能把保育修复好一点!
作者: slore     时间: 2007-9-7 13:12
还不如算出2小时后的时间直接交给at去处理……CMD挂起2小时!
作者: scriptor     时间: 2007-9-7 13:54


  Quote:
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是不太好的
为什么不直接让程序两个小时后运行起来
让它提醒呢?
这样不很简单?

没有必要搞一个循环吧,耗费资源的.