我想找到一种方法让我的终端在新输入传送到终端时提供音频反馈。
这是场景。在我的办公桌上,我设置了一台监控机器,上面有各种 Munin 和 NewRelic 仪表板。我还在终端中跟踪了一些日志,其中一些带有特定的 grep。我想找到一种方法让终端在更新这些尾部日志之一时播放声音。
例如:
tail -f /var/log/myservice.log | grep "CRITICAL" | beep
大多数终端(可以配置)在^G
显示字符时发出哔声;那是ASCIIBEL
字符。
您可以使用命令或类似的东西生成BEL
角色。echo -e '\a'
稍微改变一下你的脚本,你应该可以很容易地做到这一点:
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
(可以替换为任何其他控制台播放器)。
如果您仍想查看尾部输出,请在另一个选项卡中运行 tail。