ubuntu中实现定时弹窗的提醒脚本_Linux

简单的弹窗效果

首先是上网查了ubuntu中的弹窗命令,发现notify-send这个命令就能满足要求了

notify-send ["该休息一下啦"] "喝水!伸懒腰!动一动!"

弹窗效果

弹窗效果有了,然后应该是一个定时弹窗的功能

一、cron命令实现定时弹窗

想到的是cron命令,google了很多教程,都没有成功

在/etc/crontab 中加入了

* * * * * root notify-send ["该休息一下啦"] "喝水!伸懒腰!动一动!"

也用命令编辑了

crontab -e

同时也启动了cron服务

server cron start

还是没有成功

终于在一个介绍crontab用法的博客终于找到我的crontab脚本不执行的原因了:没有设置环境变量!

在crontab文件中定义多个调度任务时,需要特别注环境变量的设置,因为我们手动执行某个任务时,是在当前shell环境下进行的,程序当然能找到环境变量,而系统自动执行任务调度时,是不会加载任何环境变量的,因此,就需要在crontab文件中指定任务运行所需的所有环境变量

crontab脚本

HOME=/
SHELL=/bin/bash
0 * * * * notify-send ["该休息一下啦"] "喝水!伸懒腰!动一动!"

这样就实现了

二、shell脚本无限循环实现

下面是脚本:

while :
do
 sleep 3600
 echo time past
 notify-send ["该休息一下啦"] "喝水!伸懒腰!动一动!"
done

把这个脚本加入到home目录的.bashrc中,每次登陆就能启动了

三、利用zenity和notify-send实现

#!/bin/bash
alartTime=100
while (($alartTime))
do
if (($alartTime != 100)) # 如果不是 100,则说明不是初次运行,则弹出下面的提示
then
notify-send $alartTime"分钟已到,请重新设定!"
zenity --info --text "时间到,请重新设定!"
fi
alartTime=$(zenity --entry --title "定时提醒" --text "输入提醒时间(分钟, 将忽略小数)")
alartTime=${alartTime%.*} # 忽略输入的小数点后面的数字,如 4.6 识别为 4
if (($alartTime > 60)) # 不能超过最大值
then
zenity --info --text "必须小于60分钟,退出"
break
fi
notify-send "成功设定"$alartTime"分钟,开始计时"
sleep $((alartTime*60))
done

上面的脚本,使用了 notify-send 命令用于在桌面上弹出气泡提示,使用了 zenity 命令用于显示图形窗口。
自己用的话,上面的脚本可以写得更简单一点,因为错误检测没必要做。但是如果要给不太懂的人用的话,我这脚本里的错误检测及处理则会就显得有点力不从心了。

总结

好了,终于完成了ubuntu中弹窗提醒脚本了,本文提供三种方法供大家参考借鉴,不知道大家都学会了没有,希望这篇文章的内容对大家能有所帮助,如果有疑问大家可以留言交流。

以上是小编为您精心准备的的内容,在的博客、问答、公众号、人物、课程等栏目也有的相关内容,欢迎继续使用右上角搜索按钮进行搜索ubuntu
, 定时提醒
定时弹窗
定时弹窗提醒、定时弹窗提醒软件、js定时弹窗提醒、ubuntu定时执行脚本、ubuntu 定时运行脚本,以便于您获取更多的相关知识。

时间: 2024-08-01 17:04:30

ubuntu中实现定时弹窗的提醒脚本_Linux的相关文章

如何修复 ubuntu 中检测到系统程序错误的问题

在过去的几个星期,(几乎)每次都有消息 Ubuntu 15.04在启动时检测到系统程序错误 跑出来"欢迎"我.那时我是直接忽略掉它的,但是这种情况到了某个时刻,它就让人觉得非常烦人了! 检测到系统程序错误(System program problem detected) 你想立即报告这个问题吗? 我肯定地知道如果你是一个Ubuntu用户,你可能曾经也遇到过这个恼人的弹窗.在本文中,我们将探讨在Ubuntu 14.04和15.04中遇到"检测到系统程序错误(system pro

求android中一个定时提醒功能的实现思路!

问题描述 求android中一个定时提醒功能的实现思路! 比如在一个记事本中,我写了一项任务,想加一个定时提醒功能,类似闹钟一样,但又和闹钟不一样,闹钟只能定今天的时间,我想定任意一天的任意时刻的一个提醒功能,跪求实现思路!!! 解决方案 http://blog.csdn.net/wanglang3081/article/details/7456684 解决方案二: 这一个service在后台运行,实时检查时间 解决方案三: Timer定时机制. 解决方案四: 如果要实现任意天任意时刻,那就必须

修复 Shell 脚本在 Ubuntu 中的默认打开方式

修复 Shell 脚本在 Ubuntu 中的默认打开方式 当你双击一个脚本(.sh文件)的时候,你想要做的是什么?通常的想法是执行它.但是在Ubuntu下面却不是这样,或者我应该更确切地说是在Files(Nautilus)中.你可能会疯狂地大叫"运行文件,运行文件",但是文件没有运行而是用Gedit打开了. 我知道你也许会说文件有可执行权限么?我会说是的.脚本有可执行权限但是当我双击它的时候,它还是用文本编辑器打开了.我不希望这样,如果你遇到了同样的问题,我想你也许也想要这样. 我知道

Win7设置定时自动执行程序或脚本

Win7设置定时自动执行程序或脚本 在Win7系统中,我们可以使用"任务计划"设置功能结合shutdown命令灵活设置任务计划,让Win7系统实现定时自动执行,并且可以定制日常任务,让Win7按指定时间频率自动执行.   方法/步骤 1.点击开始按钮,依次选择打开"所有程序-附件-系统工具",找到"任务计划程序"即可打开Win7系统的任务计划设置面板.也可以点击Win7开始按钮,在多功能搜索框中输入"任务计划",直接从搜索结果

在ubuntu中的命令框中如何注释掉一句话,就像下面这种情况

问题描述 在ubuntu中的命令框中如何注释掉一句话,就像下面这种情况 在ubuntu中的命令框中如何注释掉一句话,就像下面这种情况,要把ipvar HOME_NAT any那句注释掉 解决方案 要找到脚本文件,用vim打开就可以修改. vim怎么用查查手册. 另外ubuntu也带有图形界面的编辑器,和记事本用起来差不多. 解决方案二: /etc/.... 用vim来编辑,i插入模式 解决方案三: 看你的截图,你装的应该有桌面的,那么你进/etc/snort/文件夹,打开snort.conf文件

在C#中调用VBScript、&#106avascript等脚本的实现

vbscript|脚本 在C#中调用VBScript.JavaScript等脚本的实现 作者:秋枫 以前在做工作流(workflow)项目的时候,里面有一项就是在用户制定流程定义时可以编写脚本来控制活动的跳转,而这些脚本定义后存在数据库中,当流程启动的时候,工作流引擎会控制活动执行顺序,串型的两个活动比较简单,但有的活动到下一个活动有条件判断,或者存在多个分支,简单的还好,只要在数据库表中加个字段就可以实现,复杂一点的就需要通过脚本实现了.当时经验不够,几天都没找到快速的解决办法,想自己写一个自

Ubuntu中如何实现屏幕切分的方法

  Ubuntu是基于Debian GNU/Linux,支持x86.amd64(即x64)和ppc架构,由全球化的专业开发团队(Canonical Ltd)打造的开源GNU/Linux操作系统.Ubuntu对GNU/Linux的普及特别是桌面普及作出了巨大贡献,由此使更多人共享开源的成果与精彩.今天想要和大家分享的是在Ubuntu中实现屏幕切分的技巧.我们将屏幕切分之后就能够可以将屏幕分成若干个小屏幕,而且每个小屏幕独立使用,为您实现一显示器同时看股市.看电影.看新闻.玩游戏等,非常有趣而实用!

如何在Ubuntu中安装使用ZFS文件系统

Linux 操作系统支持和可用的文件系统类型非常多,既然这些文件系统都可以正常工作,我们为什么要去尝试一个新的文件系统呢?其实,不同 Linux 文件系统类型并不完全相同,不然也不用搞出这么多种类来了.其中有些还具有比较明显的优势,比如--ZFS 文件系统. 为什么选择ZFS文件系统 ZFS 文件系统非常之棒,它是一个真正的现代文件系统,其内置的功能对处理数据负载非常有意义. 如果你正考虑将 ZFS 用于超快速 NVMe SSD,那它可能不是最佳选择.ZFS 速度相对较慢并不太关紧要,它旨在用于

如何在 Ubuntu 中管理开机启动应用

在 Ubuntu 中管理开机启动应用 你曾经考虑过 在 Ubuntu 中管理开机启动应用 吗?如果在开机时,你的 Ubuntu 系统启动得非常缓慢,那么你就需要考虑这个问题了. 每当你开机进入一个操作系统,一系列的应用将会自动启动.这些应用被称为'开机启动应用' 或'开机启动程序'.随着时间的推移,当你在系统中安装了足够多的应用时,你将发现有太多的'开机启动应用'在开机时自动地启动了,它们吃掉了很多的系统资源,并将你的系统拖慢.这可能会让你感觉卡顿,我想这种情况并不是你想要的. 让 Ubuntu