Use como parte de um ~/.zshrc
(ou similar) para que seu shell se conecte automaticamente à tmux
sessão em execução para o seu usuário, ou crie um se não houver nenhum.
Mas apenas se ainda não estiver dentro de uma sessão e não estiver conectado via SSH.
Isso evita que os tmux
painéis tentem aninhar tmux
sessões e evita que uma tmus
sessão seja iniciada durante o SSH em uma máquina compartilhando um ~/.zshrc
arquivo semelhante .
if [[ "$TERM" != "screen" ]] &&
[[ "$SSH_CONNECTION" == "" ]]; then
# Attempt to discover a detached session and attach
# it, else create a new session
WHOAMI=$(whoami)
if tmux has-session -t $WHOAMI 2>/dev/null; then
tmux -2 attach-session -t $WHOAMI
else
tmux -2 new-session -s $WHOAMI
fi
else
# One might want to do other things in this case,
# here I print my motd, but only on servers where
# one exists
# If inside tmux session then print MOTD
MOTD=/etc/motd.tcl
if [ -f $MOTD ]; then
$MOTD
fi
fi
Se alguém deseja que uma tmux
sessão seja iniciada para conexões SSH, basta substituir:
&&
[[ "$SSH_CONNECTION" == "" ]]; then
Com:
; then