背景

在终端执行一些需要较长时间的命令时,会切换到别的界面。但为了知道是否执行完成,需要时不时地切换过去看一眼。很麻烦。

解决方式

为了减少这种麻烦,可以使用notify-send,发送桌面通知。notify-send的使用非常简单,后面加上提示内容即可。

比如执行make的时候,就可以换成使用

make && notify-send "编译完成"

当然,每次还需要手工输入notify-send,也是挺麻烦。经常使用的话,可以封装成shell函数。起个自己顺手的名字。

比如我就将m作为了make的函数,每次输入m即可。

m() {make -j32 $@ && 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

日常开发技巧:使用notify-send发送通知相关推荐

  1. 【C#/.NET 日常开发技巧】JWT+ActionFilter 简便控制器代码

    微信公众号:趣编程ACE 关注可了解更多.NET日常开发技巧,如需源码,请公众号留言 源码; JWT+ActionFilter 简便控制器代码 这是微软关于过滤器的介绍:https://docs.mi ...

  2. 【.NET 日常开发技巧】一个性能强悍的HttpClient 库

    微信公众号:趣编程ACE 关注可了解更多的.NET日常实战开发技巧,如需源码请公众号留言源码即可; 源码如下:1// See https://aka.ms/new-console-template f ...

  3. 日常开发技巧(一):延迟删除文件

    在一般的业务场景中,文件在使用完成后,会立即删除,代码如下: public void normalDelete() {String fileName = UUID.randomUUID().toStr ...

  4. autojs免root脚本引擎开发的发送通知和去除通知代码,值得参考学习

    说明 本文提供的代码仅供参考.不建议用于生产环境. 可能有些地方在最新版本的Auto.js上面需要做修改,才能运行. Auto.js简介 Auto.js是利用安卓系统的"辅助功能" ...

  5. 日常安排php,PHP日常开发小技巧

    PHP日常开发小技巧 导语:PHP语言中,如果你懂得一些开发技巧,那么对你学PHP,会有很大的帮助.下面的是百分网小编为大家整理的PHP日常开发小技巧,希望对你能有所帮助. PHP批量取得checkb ...

  6. Android开发笔记——Android 9发送通知

    Android 9 发送通知 发送通知 布局文件 程序代码 运行截图 发送通知 布局文件 <?xml version="1.0" encoding="utf-8&q ...

  7. 日常开发CSS小技巧整理

    日常开发CSS小技巧整理 1.解决inline-block元素设置overflow:hidden属性导致相邻行内元素向下偏移 .wrap {display: inline-block;overflow ...

  8. JS日常开发小技巧(持续更新)

    前言 整理总结了一些日常开发中的JS小技巧,可以简化代码,使代码看起来更加简洁明了. 一.数组去重 数组去重的方法有很多种,比如:for循环.双重for循环等,思路一般是生成一个新数组,然后遍历原数组 ...

  9. 日常开发中常见英语单词(都总结好啦)

    byte[baɪt] : 字节; Java 关键字,8大基本数据类型 short[ʃɔːt] : 短类型; Java 关键字,8大基本数据类型 int[ɪnt] :整型; Java 关键字,8大基本数 ...

最新文章

  1. grep与正则表达式基础
  2. Heu OJ 解题报告索引
  3. openshift_云上的播放框架变得简单:Openshift模块
  4. 乐乐勇智能教育机器人有多少型号_【头条】协作机器人平台化趋势将会是柔性自动化的破局之道...
  5. 在ASP.NET中使用FCKeditor V2
  6. 2种造成sqlserver自增列不连续的原因
  7. Linux 完全卸载重装opencv
  8. 大数据技术之Linux
  9. 华为机试练习汇总(JS实现)
  10. coreldraw x4离线激活_coreldraw x4怎么激活 coreldraw x4注册机使用方法
  11. 2020年终总结——走在代码公益的路上
  12. 网管软件的几种主动监测方式
  13. 2021朔城区一中高考成绩查询,青春有志逐梦远行—朔城区一中2021届高三毕业典礼暨高考壮行大会...
  14. 视频教程-Access2013数据库入门教程4报表部分-MySQL
  15. 如何借助问答平台上做好网络营销?
  16. iPhone 9最新概念图曝光,或在官网直接上架!
  17. 蓝牙怎么区分单模和双模_蓝牙中的单模、双模指的是什么意思?有何不同呢?...
  18. 音频工具(pyqt)
  19. 计算机中能与CPU交换的,能直接与CPU交换信息的存储器是什么
  20. Vue多页面应用开发

热门文章

  1. ASP.NET 页面事件执行顺序 收藏
  2. javascript 调用c#变量实例
  3. lseek函数实现对打开文件的定位
  4. linux_unix系统编程手册源代码编译
  5. 【CyberSecurityLearning 20】xu ni zhuan yong wang luo
  6. 【⭐C++宝藏男孩⭐】C++ string字符串比较
  7. Deep Learning-论文翻译以及笔记
  8. The ultimate end-to-end tutorial to create and deploy a fully decentralized Dapp in ethereum
  9. 技术讨论 | 一次尚未完成的薅羊毛行动
  10. Caffe 初识,揭开面纱