veket官方网站论坛

star2523 发表于 2010-4-28 23:12

每隔一定时间提醒休息的SHELL脚本

天天坐在电脑前的朋友要每隔一段时间活动一下了,不然身体会变得越来越差。下面的shell脚本可以每隔一段时间来提醒你。

#!/bin/bash
# Usage: ./break.shmins2>1 1>/dev/null
function time_stop
{
n=1
while ((n<60))
do
      sleep ${min}
      ((n+=1))
done
}
min=$1
while true
do
    time_stop
    info="$USERNAME\n ${min} minutes have past\nYou need to take a break!\n为了健康,休息一下,活动一下胳膊,脖子,腰部"
    note="info"
    Xdialog --title $note --beep --msgbox "${info}" 15 50
    Xdialog --title $note --beep --inputbox "休息一下吧!\n Take a break?" 10 30 2>tmp$$
    input=`cat "tmp$$"|sed -n '$p'`
    case ${input} in
      e)    break;;
            y)      continue;;
            n)      gnome-screensaver-command -l; continue;;
            *)      Xdialog --title $note --no-buttons --infobox "invalidate input!" 4 20;continue;;
      esac
done
rm tmp$$


使用方法:
首先将上述代码保存为break.sh ,然后在SHELL终端中找到该文件所在处,然后输入./break.sh 30 2>1 1>/dev/null &
其中的“红色30”可以改为你想要被提醒的时间,这样每到30分钟,系统就会提醒你该休息放松一下啦!


[ 本帖最后由 star2523 于 2010-4-28 23:35 编辑 ]

403250936 发表于 2010-4-28 23:30

回复 1# 的帖子

楼主自己写的吗?可以很方便的做成图形界面的程序呀,有空研究一下。

如果是楼主原创的,我就把它转成图形界面的看看。

shimch 发表于 2010-4-28 23:31

谢谢分享

star2523 发表于 2010-4-28 23:47

原帖由 403250936 于 2010-4-28 23:30 发表 http://www.lucky8k.com/images/common/back.gif
楼主自己写的吗?可以很方便的做成图形界面的程序呀,有空研究一下。

如果是楼主原创的,我就把它转成图形界面的看看。

不好意思,代码不是我写的,我也是坐在电脑前感到很累了,就想找找有没有这种定时提醒的程序,结果看到一般都是VBS的脚本,后来才找到一个用SHELL写的脚本,然后就稍加修改,那里面的汉字就是我添加的,不过感觉还是不太方便,因为要想完全终止提醒,还得在终端里面将已经运行脚本的进程号杀掉才行,就是输入:kill 进程号。

如果你有兴趣的话,完全可以把它再做成图形化的可安装程序啊,弄成PET贡献出来给大家使用额!在此先谢过罗!

403250936 发表于 2010-4-29 00:09

回复 4# 的帖子

做成图形界面很倒容易,不过这类软件有个很好用的,我去搜索下看能不能找到发上来。
页: [1] 2 3
查看完整版本: 每隔一定时间提醒休息的SHELL脚本