Как я могу автоматически перезапустить панель tmux (Byobu), когда закончится ее задача?

Мне нужен способ немедленно перезапустить основной процесс в панели tmux после того, как процесс завершился.

Я использую byobu-tmux для запуска различных компонентов приложения клиент-сервер (grails), которое я разрабатываю. Я написал сценарий оболочки, который открывает панели и запускает все компоненты:

byobu-tmux split-window -h "sleep 10; <client-1-start-script>" byobu-tmux split-window -t 1 -v -p 66 "sleep 10; <client-2-start-script>" byobu-tmux split-window -t 2 -v -p 50 "sleep 10; <client-3-start-script>" byobu-tmux split-window -t 0 -v "<server-start-script>" 

Этот скрипт работает, но, как вы могли бы ожидать от tmux, всякий раз, когда вы убиваете одну из частей, она закрывает эту панель. Я также попытался добавить в оболочку bash:

 byobu-tmux split-window <opts> "<script>; byobu-tmux respawn-pane" 

и используйте явную среду bash:

 byobu-tmux split-window <opts> "bash -i -c \"<script>\"" 

Этот вопрос демонстрирует, как держать панель открытой, но есть ли способ получить команду, которая была выполнена при создании панели для повторного запуска, а не для закрытия панели?

  • Цвет печатается справа при написании собственного скрипта в byobu
  • Создайте киоск с tmux
  • tmux вызывает смелые шрифты в vim
  • Как прокручивать, удерживая Shift для копирования в tmux?
  • Как мне связать мой ctrl + b, чтобы мне не нужно было нажимать его, чтобы изменить размер моей панели?
  • Как установить пользовательские переменные в tmux?
  • Запустить R-код из vim-r-plugin в виде отдельного окна вместо внутреннего tmux / screen?
  • Как я могу отказаться от оболочки после выхода из команды, которую я начал с помощью сценария tmux?
  • One Solution collect form web for “Как я могу автоматически перезапустить панель tmux (Byobu), когда закончится ее задача?”

    Посмотрите на команды:

    • держать-один работает (1)
    • не вводные один-до-успеха (1)
    • не запускать-один-до-отказа (1)

    и друзей в пакете run-one в Ubuntu.

    Просто оберните свою команду одним из них, в зависимости от ситуации.

    Полное раскрытие: я являюсь автором Byobu , а также набором служебных программ.

    Interesting Posts

    Как установить вывод фреймбуфера?

    Что вы используете параметр -t "tag" для журнала?

    В какой ситуации tarball (.tgz) будет почти того же размера, что и оригинал

    Поддерживает ли конфигурация iscsi target и инициатор iscsi в двух Linux-узлах и использование Ethernet-кабеля для связи делает его SAN?

    Менее сложный способ миграции данных сервера?

    Полностью отключить / деактивировать USB в Ubuntu 10.04

    Как проверить, какая версия редактора VI у меня есть?

    изменить права доступа к домашней папке при выходе / отключении

    Как эхо makefile с помощью Make's $ (shell …)

    Пропустить первую строку (или больше) в CSV-файле, который используется для переименования файлов

    Безопасное удаление флеш-диска

    Распределите систему Linux как ISO по сравнению с набором файлов

    cpio VS tar – какое лучшее решение для архивации, чтобы сжать сотни каталогов в один файл

    Обрезать линии между двумя разделителями

    Можно ли узнать, когда вы находитесь в первом приглашении bash терминала?

    Linux и Unix - лучшая ОС в мире.