最近每天面对PC都超过12小时,眼酸,头痛的。毕竟,重要的是生活本身,如果过劳了,也就没什么意思了。于是乎,写了个脚本,只要自己每天累计在线超过八小时,系统将自动关机。时间仓促,功能还是很僵硬。回来有时间慢慢修改了。。。

原理:使用cron每五分钟执行一次脚本sd.sh,而sd.sh每次对累加器加5,在离八小时的前十分钟提醒用户十分钟后关机;如果还有时间,把累加器结果写进临时文件。

具体过程如下:

sd.sh脚本:

  1. #!/bin/bash 
  2. FILE="/tmp/t.txt" 
  3. t=`cat $FILE` 
  4. t=`expr $t + 5` 
  5. if [ $t -eq 470 ];then 
  6.         shutdown +10 “System will shutdown after 10 minutes” 
  7. fi       
  8. echo $t > $FILE 

修改sd.sh为可执行并移入/usr/bin

  1. chmod +x sd.sh 
  2. mv sd.sh /usr/bin/ 

使用crontab -e添加例行任务

  1. crontab -e 
  2.   */5 * * * * /usr/bin/sd.sh 

在/etc/profile下添加下面一行,保证我们的计数器每天开机时为0

  1. echo 0 > /tmp/t.txt 

好了,到此基本功能已经实现。最近会找时间完善的^_^