linux番茄时钟,Linux 番茄时钟 定时 取消 快捷方式

shell 脚本

clock.sh

#!/bin/bash

if [ $1 == 0 ]

then

at -d `atq | awk -v ORS=" " '{a[NR]=$1} END {for(i=1;i<=NR;i++){print a[i]}}'` 2> /dev/null

kill `ps -ef | grep feh | grep -v grep | awk '{print $2}' | sed -n '1p'` 2>/dev/null

espeak -v zh "取消"

else

time1=${1:-45}

time2=$[$time1+5]

espeak -v zh "$time1"

echo "env DISPLAY=:1 feh -F ~/Downloads/icon/th.jpeg" | at now +$time1 minutes

echo "env DISPLAY=:1 animate -backdrop ~/Downloads/icon/fd.gif" | at now +$time2 minutes

echo "ps -ef | grep lazha2 | grep -v grep | awk '{print $2}' | sed -n '1p' | xargs kill 2> /dev/null" | at now +$time1 minutes

feh ~/Downloads/icon/lazha2.jpg

fi

解释

if [ $1 == 0 ]

then

# 取消刚才设定的闹钟

at -d `atq | awk -v ORS=" " '{a[NR]=$1} END {for(i=1;i<=NR;i++){print a[i]}}'`

# 关闭图片

kill `ps -ef | grep feh | grep -v grep | awk '{print $2}' | sed -n '1p'` 2>/dev/null

espeak -v zh "取消"

else

# 默认45分钟

time1=${1:-45}

# 如果到点后仍意犹未尽,那么5分钟后全屏提示

time2=$[$time1+5]

# 普通话读出时间,需要安装 espeak,可以玩一下

espeak -v zh "$time1"

# time1 时间后,在外接屏上显示指定图片,修改路径`~/Downloads/icon/th.jpeg`,按`Esc`关闭图片

echo "env DISPLAY=:1 feh -F ~/Downloads/icon/th.jpeg" | at now +$time1 minutes

# time2 时间后,在全部屏幕上显示指定gif动画,修改路径`~/Downloads/icon/fd.gif`,按`Esc`关闭图片

echo "env DISPLAY=:1 animate -backdrop ~/Downloads/icon/fd.gif" | at now +$time2 minutes

# time1 时间后,关闭提示图片,这里需要 grep lazha2(图片名),否则上面的 th.jpeg 可能不会显示就被关闭了

echo "ps -ef | grep lazha2 | grep -v grep | awk '{print $2}' | sed -n '1p' | xargs kill 2> /dev/null" | at now +$time1 minutes

# 因为有时候不知道是否已经开启,显示一张【提示图片】,修改路径`~/Downloads/icon/lazha2.jpg`

feh ~/Downloads/icon/lazha2.jpg

fi

添加快捷方式

在 /usr/share/applications/目录下添加 clock.desktop 文件

sudo vim /usr/share/applications/clock.desktop

[Desktop Entry]

Name=Clock

Exec=sh /home/lfp/bin/clock.sh

Icon=/home/lfp/Downloads/icon/clock.png

Type=Application

StartupNotify=true

Actions=time1;time2;cancel;

[Desktop Action time1]

Name=30分钟

Exec=sh /home/lfp/bin/clock.sh 30

[Desktop Action time2]

Name=35分钟

Exec=sh /home/lfp/bin/clock.sh 35

[Desktop Action cancel]

Name=取消时钟

Exec=sh /home/lfp/bin/clock.sh 0

需要自己修改的地方

Exec 路径,修改为自己clock脚本所在路径

Icon 路径,修改为你要显示的图片的路径

Actions 可以自己添加或修改时间,修改之后需要重启dock

alt + F2 打开对话框,输入 "r",回车重启生效

添加可执行权限

sudo chmod +x /usr/share/applications/clock.desktop

此时在程序列表中就会显示该快捷方式

ae1b129012db08eb8459e2b4c2d8ff75.png

可以右键添加到收藏夹快捷启动

b3b0e109f95791c8f94ce1602cf70f86.png

资源

th.jpeg

234acb8e189a097918c10281a15deb5c.png

fd.gif

1c555e2113af5e4310e620cbd0c05326.gif

clock.png

f22967f6f0da6bf5889d09a27ace04df.png

lazha2.jpg

3834ad6ca3af3f5f2d0cd61e3050aea2.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值