2012-05-10 3 views
2

Я хотел бы найти способ заставить мой терминал давать звуковую обратную связь, когда новый вход доставляется на терминал.Отзыв аудио в терминале Ubuntu

Вот сценарий. У меня на столе у ​​меня установлена ​​контрольная машина с различными панелями Munin и NewRelic. Я также обрабатываю несколько журналов в терминале, некоторые с определенными greps. Я хотел бы найти способ, чтобы терминал воспроизводил звук, когда обновляется один из этих журналов tail'd.

Например:

tail -f /var/log/myservice.log | grep "CRITICAL" | beep 

ответ

2

Большинство терминалов (может быть настроено) подавать звуковой сигнал при отображении символа ^G; то есть символ ASCII BEL.

Вы можете сгенерировать символ BEL с помощью команды echo -e '\a' или чего-нибудь подобного. С небольшим изменением вашего скрипта, вы должны быть в состоянии сделать это легко:

tail -f /var/log/myservice.log | sed 's/CRITICAL/CRITICAL\a/' 

Большинство терминалов также установить Срочное флаг на окне в вопросе, который должен сделать его легко обнаружить конкретное который требует внимания даже на другом рабочем столе.

+0

Мне нравится этот ответ, наилучший b/c, он полагается на существующие инструменты, чтобы выполнить работу просто. Другие ответы также жизнеспособны. – Spanky

1

в konsole вы можете сказать ему, чтобы контролировать терминал для деятельности, и вы можете настроить, какие уведомления использовать (звук, всплывающее окно, запустите команду ...).

1

Это как играть звук каждый раз, когда некоторые изменения файла:

while true; do inotifywait /var/log/myservice.log && mplayer /usr/share/sounds/ubuntu/stereo/bell.ogg; done

Нажмите Ctrl + C, чтобы прервать. Вам необходимо установить пакет inotify-tools и mplayer (его можно заменить любым другим консольным проигрывателем).

Если вы все еще хотите видеть выход хвоста, запустите хвост на другой вкладке.

+0

Мне очень нравится использование 'inotify-tools'. – sarnold

Смежные вопросы