我想找到一种方法让我的终端在每次将新输入传送到终端时提供音频反馈。在Ubuntu终端中的音频反馈
这里是场景。在我的办公桌上,我安装了一台监测仪器,配有各种Munin和NewRelic仪表板。我还在终端上拖尾了几个日志,其中一些用了特定的greps。我希望找到一种方法,让这些尾部日志中的一个更新时,终端可以播放声音。
例如:
tail -f /var/log/myservice.log | grep "CRITICAL" | beep
我想找到一种方法让我的终端在每次将新输入传送到终端时提供音频反馈。在Ubuntu终端中的音频反馈
这里是场景。在我的办公桌上,我安装了一台监测仪器,配有各种Munin和NewRelic仪表板。我还在终端上拖尾了几个日志,其中一些用了特定的greps。我希望找到一种方法,让这些尾部日志中的一个更新时,终端可以播放声音。
例如:
tail -f /var/log/myservice.log | grep "CRITICAL" | beep
当显示^G
字符时,大多数终端(可配置)发出嘟嘟声;那就是ASCII BEL
这个字符。
您可以使用echo -e '\a'
命令或类似命令生成BEL
字符。随着你的脚本的轻微变化,你应该能够做到这一点很容易:
tail -f /var/log/myservice.log | sed 's/CRITICAL/CRITICAL\a/'
绝大多数终端都也设置紧急标志有问题的窗口,它应该可以很容易地发现在特定的即使在其他台式机上也需要注意。
在konsole
你可以告诉它来监视活动的终端,并且可以配置哪些通知使用(声音,弹出窗口,运行命令)。
这是怎么每次播放声音,一些文件的变化:
while true; do inotifywait /var/log/myservice.log && mplayer /usr/share/sounds/ubuntu/stereo/bell.ogg; done
按Ctrl + C中断。您需要安装包inotify-tools
和mplayer
(可以用任何其他控制台播放器替换)。
如果您仍想查看尾部输出,请在另一个选项卡中运行尾部。
我真的很喜欢'inotify-tools'的使用。 – sarnold
我喜欢这个答案最好的B/C它依靠现有的工具简单地完成工作。其他答案也是可行的。 – Spanky