背景
在终端执行一些需要较长时间的命令时,会切换到别的界面。但为了知道是否执行完成,需要时不时地切换过去看一眼。很麻烦。
解决方式
为了减少这种麻烦,可以使用notify-send,发送桌面通知。notify-send的使用非常简单,后面加上提示内容即可。
比如执行make的时候,就可以换成使用
make && notify-send "编译完成"
当然,每次还需要手工输入notify-send,也是挺麻烦。经常使用的话,可以封装成shell函数。起个自己顺手的名字。
比如我就将m作为了make的函数,每次输入m即可。
m() {
make -j32 [email protected] && notify-send "编译完成"
}
注意事项
如果是通过ssh登录到远程服务器上,则需要在ssh登录时,使用X11-forward才行,不然在远程使用notify-send本地是看不到的。
在~/.ssh/config中添加配置即可,如
Host CS
hostname 192.168.12.34
user zhuangqiubin
ForwardX11 yes
ForwardX11Trusted yes
如果是想在cron中,定时调用,则需要先设置DISPLAY=:0.0,如
00 12 * * * export DISPLAY=:0.0 && notify-send "到点吃饭了"
其他
notify-send还有很多的参数,可以指定时间,图标等,有需要可查看帮助或上网搜索教程。
原文地址:https://www.cnblogs.com/zqb-all/p/9901597.html
时间: 2024-10-20 12:14:42