linux - Ubuntu自启动脚本实现定时关机的问题?
大家讲道理
大家讲道理 2017-04-17 17:05:43
0
1
827

想象一下给年幼的孩子配了一台电脑,出于对孩子身体健康的着想,打算给孩子装上Ubuntu系统,并让系统实现以下功能:孩子玩电脑超过50分钟时,电脑自动关机;只有当孩子休息20分钟后才能成功开机。

问题:将以下代码写入shutdown_on_time.sh,再新建一个olddate.log(在该文件里写入数字1)文件,shutdown_on_time.sh与olddate.log所处的文件夹位置为/home/lic/shell_test/
在Ubuntu系统的文件/etc/rc.local(系统启动后,会自动执行rc.local里的程序)里加入
bash /home/lic/shell_test/shutdown_on_time.sh
电脑开机后,并没有实现该功能,请问有什么解决方案吗?

注:shutdown_on_time.sh的权限设置:
chmod 777 shutdown_on_time.sh

#!/bin/bash

#shutdown after 50 munite when open the system
standardskip=20 #规定休息时间必须超过20分钟

datenow=$(date +%Y%m%d%H%M) #读取当前时间

dateold=$(awk 'NR==1{print $1}' /home/lic/shell_test/olddate.log) #读取上一次记录的时间

skip=$(expr $datenow - $dateold)

if [ $skip -gt $standardskip ]
then
sleep 100 
notify-send "主人,你已经休息了20分钟了,可以使用电脑了"
sleep 3
notify-send "主人,你已经休息了20分钟了,可以使用电脑了"
sleep 3
notify-send "主人,你已经休息了20分钟了,可以使用电脑了"
sleep 3000
echo $datenow > /home/lic/shell_test/olddate.log
notify-send ["计算机将会在2分钟后关机"] "请及时保存已修改的文件"
sleep 3
notify-send ["计算机将会在3分钟后关机"] "请及时保存已修改的文件"
sleep 3
notify-send ["计算机将会在3分钟后关机"] "请及时保存已修改的文件"
sleep 120
shutdown now
else
sleep 100 
notify-send "主人,还不到20分钟,你应该再休息会"
notify-send ["计算机将会在3分钟后关机"] "请及时保存已修改的文件"
sleep 3
notify-send ["计算机将会在3分钟后关机"] "请及时保存已修改的文件"
sleep 3
notify-send ["计算机将会在3分钟后关机"] "请及时保存已修改的文件"
sleep 300
shutdown now
fi

exit 0
大家讲道理
大家讲道理

光阴似箭催人老,日月如移越少年。

모든 응답(1)
巴扎黑

'이 기능은 구현되지 않았습니다.' 정확히 구현되지 않은 기능은 무엇인가요? 알림이 구현되었나요? 아니면 자동으로 종료되지 않나요?
이미 우분투를 설치했는데, 아이들이 웹게임, 스팀을 할까봐 걱정되시나요?

shutdown 명령에는 sudo 권한이 필요합니다. sudo visudopassword-free에 shutdown을 추가하고 호출 시 앞에 sudo를 추가하세요.

또한, 자체 시작 프로그램에 대한 일반적인 접근 방식은
1. Ubuntu의 "시작 응용 프로그램"을 사용하여 관리하는 것입니다.
2 systemd 또는 sys v 서비스 스크립트 작성

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿