Для значков в Unity Launcher существует возможность привлечь внимание пользователя к произошедшему событию. Когда значок в Unity Launcher прыгает как сумасшедший и горит дьявольским пламенем, то это и есть - Urgency. Ваши долговыполняющиеся команды в Gnome Terminal не имеют возможности "потрясти" иконку Терминала и привлечь вас к выполнившейся задаче. Вот это мы и поправим ...

Мы напишем небольшую программу на Python 3 и она поможет в поставленной задаче. Питон 3 взят, с прицелом на будущее, из-за тотального Unicode и беспроблемной работы с русскими буквами.
Наша программулька не только потрясёт значком Unity Launcher'а, но и выведет уведомление. Если что-то из этого не нужно, то смело правьте исходник. Для работы с уведомлениями в Python 3 нам, возможно, понадобится пакет python3-notify2, который нужно установить sudo apt-get install python3-notify2
Вот тот не идеальный код на Питоне 3, который нужно скопировать и вставить в файл bell. Наш звоночек нужно сохранить к себе в ~/bin/ и сделать исполняемым.
#!/usr/bin/env python3
# -*- coding: UTF-8 -*-
# site: vasilisc.com/urgent-terminal
# need packages python3-notify2 - sudo apt-get install python3-notify2
from gi.repository import Unity, GObject
import sys
import notify2
counti = 0
loop = GObject.MainLoop()
launcher = Unity.LauncherEntry.get_for_desktop_id("gnome-terminal.desktop")
def update_urgency():
global counti
global launcher
counti=counti+1
if counti >= 2:
loop.quit()
launcher.set_property("urgent", True)
return True
GObject.timeout_add_seconds(2, update_urgency)
loop.run()
if not notify2.init("icon-summary-body"):
sys.exit(1)
n = notify2.Notification(
"Терминал",
"Была выполнена ваша задача",
"notification-message-im")
n.show()
Почему в ~/bin/ ? У нас есть у каждого в домашней папке файл .profile, в котором установлено при наличии папки ~/bin/ добавить её в переменную PATH и тогда программы из этой папки не нужно указывать с полным путём и достаточно указать только имя файла программы, что весьма удобно.
# set PATH so it includes user's private bin if it exists
if [ -d "$HOME/bin" ] ; then
PATH="$HOME/bin:$PATH"
fi
Файл bell лежит в ~/bin/ и обладает битом исполнимости. Теперь можно запускать имитацию длительной команды и протестировать колокольный звон нашего bell.
Пингаем свой шлюз 5 пакетами и наблюдаем работу bell.
ping -c 5 `ip route show default | awk '/default/ {print $3}'` && bell
Если вам не нужно трясьти значком Терминала и достаточно только уведомления, то можно поступить проще. В файле ~/.bashrc есть алиас с именем alert.
alias alert='notify-send --urgency=low -i "$([ $? = 0 ] && echo terminal || echo error)" "$(history|tail -n1|sed -e '\''s/^\s*[0-9]\+\s*//;s/[;&|]\s*alert$//'\'')"
Нужно удалить знак комментария # перед ним, а если алиаса alert нет, то добавить и перезайти в Терминал. Теперь при использовании алиаса alert в длительных операциях в виде sleep 5; alert выведет уведомление в правом верхнем углу.
Теперь с помощью bell или alert вы всегда будете предупреждены о завершении длительных во времени команд в Терминале.
Дополнительные материалы:
Unity Ubuntu изнутри. Launcher.
Terminal с нужными размерами и положением.
Отключить подтверждение gnome-terminal.