Как правильно запустить tmux на терминальном запуске?

Я использовал этот отрывок для запуска tmux, когда терминал запускается:

# TMUX startup
if command -v tmux>/dev/null; then
 [[ ! $TERM =~ screen ]] && [ -z $TMUX ] && exec tmux
fi

Но с этим я не могу выйти из tmux без терминального экрана, закрываемого также.

Я попробовал:

Ctrl + b :detach

exit

И поиск PID и уничтожение его. Все те методы закрывают терминал также.

Как я должен настроить tmux для запуска при запуске терминала, но все еще способности закрыть его без терминального закрытия? Любые подсказки ценятся!

7
задан 19 February 2019 в 03:26

1 ответ

Проблема exec команда. Как объяснено здесь, exec заменит текущую оболочку тем, что Вы говорите, что она выполняется. Таким образом, у Вас нет оболочки, которая работает tmux, Вы просто имеете tmux и поэтому выход из него также выйдет из терминала.

Просто удалите exec и это должно работать как ожидалось:

if command -v tmux>/dev/null; then
 [[ ! $TERM =~ screen ]] && [ -z $TMUX ] && tmux
fi
10
ответ дан 23 November 2019 в 06:25

Другие вопросы по тегам:

Похожие вопросы: