Я запускаю 16 процессов отладки одновременно с нашим адаптированным gdb (называемым e-gdb). Процессы вызываются скриптом bash, используя:
gnome-terminal -e 'e-gdb -x gdbNN.cmd progNN.e'
Для управления несколькими сессиями я могу открыть несколько терминалов, используя опцию --geometry
, чтобы расположить их в виде мозаики на моем экране. Кроме того, я могу использовать опцию --tab
, чтобы все они были в одном терминале.
Когда сеансы заканчиваются, я закрываю терминал (-ы) одним щелчком (я не хочу, чтобы он автоматически закрывался).
Итак, с несколькими терминами мне нужно щелкнуть 16 раз, а с вкладками - один раз, но мне нужно переключаться между вкладками, чтобы увидеть результаты сеанса. Я бы хотел использовать вкладки в терминале, чтобы я мог просматривать их одновременно и закрывать все одним щелчком.
Есть ли способ выложить вкладки? Если нет, могу ли я закрыть все отладочные терминалы одним действием?
ОБНОВЛЕНИЕ : Есть ли простой способ убить несколько терминалов на основе их названия? Я использую опцию -t
для именования окон. Есть ли что-то вроде kill -name '*DBG*'
?
Решение, которое я нашел для себя для этой проблемы, заключалось в использовании wmctrl
. Это позволяет очень детально контролировать ваши окна. Итак, у меня есть набор терминалов под названием Acyrid-Live
и Acyrid-Beta
.
wmctrl -F -c Acyrid-Live
закроет только это окно
Это довольно полезный набор инструментов.
http://tomas.styblo.name/wmctrl/
Редактировать: Да, я понимаю, что это старая ветка, но это также один из самых популярных результатов при поиске, как чтобы закрыть терминалы по названию, поэтому я решил опубликовать успешное решение.
Можно закрыть их все с помощью killall gnome-terminal
, но это также закроет другие работающие терминалы гномов.
Если упомянутый вами управляющий скрипт позволяет, вы можете попробовать добавить к нему следующее:
# When this exits, exit all back ground process also.
trap 'kill $(jobs -p)' EXIT