У меня возникли проблемы с получением нового сеанса для выполнения команды после создания.Как выполнить команду после открытия нового сеанса tmux
Вот часть моего .tmux.conf:
set-window-option -g automatic-rename off
set-option -g allow-rename off
new -A -s 'main' -n 'servers' 'ls' # troubled line
splitw -h -p 35 htop
splitw -v
splitw -v -t 1
splitw -v -t 1
neww -n 'irc' weechat-curses
selectw -t 0
Это линия, что я работаю на:
new -A -s 'main' -n 'servers' 'ls'
Вот как я открываю tmux:
alias tux='TERM=screen-256color-bce tmux -f ~/.tmux.conf attach-session -t main'
«ls» должно вызывать ошибку, поскольку, когда она присутствует, начальная панель делает не создаются. Если я изменю его на «верх», он отлично работает и команда будет выполнена.
Итак, почему верхняя работа и не ls (или любая другая команда, которую я пытаюсь)?
Это не работает. Он создает начальный основной сеанс с окном, называемым серверами. Но когда он открывается, панель мертва. Я попытался использовать на 'respawnw -t servers', но создал 2-е окно, называемое серверами с предупреждением из нескольких панелей. – doremi
См. Мое обновление. У меня также есть опечатка в оригинале, где команда 'new' должна просто читать' new -A -s 'main''. – chepner
Я понял, как использовать 'send-keys' для выполнения того, что я хотел. Это не так чисто, как хотелось бы, потому что вы можете увидеть выданную команду, тогда как было бы неплохо просто увидеть результат из команды, но она работает. Кроме того, я не знал, что вы можете сделать точечную нотацию ('window.pane #') для флага -t. Это круто. – doremi