Auto-anexar ou iniciar o tmux no login

Use como parte de um ~/.zshrc(ou similar) para que seu shell se conecte automaticamente à tmuxsessã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 tmuxpainéis tentem aninhar tmuxsessões e evita que uma tmussessão seja iniciada durante o SSH em uma máquina compartilhando um ~/.zshrcarquivo 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 tmuxsessão seja iniciada para conexões SSH, basta substituir:

&& 
[[ "$SSH_CONNECTION" == "" ]]; then

Com:

; then