Crie uma sessão tmux em shells separadas

1

Gostaria de usar sessões tmux para gerenciar janelas / painéis em diferentes shells. O que eu notei é que o tmux sempre usará o shell a partir do qual foi lançado para todas as sessões subseqüentes, independentemente do shell usado para elas.

Eu tenho duas conchas. Vamos chamá-los de ae b

No primeiro shell eu corro:

tmux new -s a

No segundo shell eu corro:

tmux new -s b

O que eu acabei percebendo é que o shell real usado pelo tmux session b é shell a. As variáveis de ambiente são herdadas corretamente, mas o shell em si não é o que eu esperava que fosse.

Alguma sugestão sobre como fazer com que o tmux funcione bem com vários shells?

    
por phantombit 22.06.2016 / 22:49

1 resposta

0

Você pode criar vários servidores tmux que usam um shell diferente.

$> SHELL=$(which zsh) && tmux -L zsh-tmux-socket new -s zsh-session
$> SHELL=$(which bash) && tmux -L bash-tmux-socket new -s bash-session

A página man do tmux afirma que a opção [-L socket-name] permite uma nome do socket diferente a ser especificado, permitindo que vários servidores tmux independentes sejam executados .

Descobri que cada nova janela criada em cada sessão do servidor estará usando o shell especificado pela variável de ambiente SHELL para essa sessão.

Isso funciona para o tmux 1.8, eu não sei sobre versões anteriores.

    
por 03.06.2017 / 01:59