Quiero usar tmux de forma predeterminada cuando establezco una conexión ssh y esto funciona bien con un comando como:
ssh host.example.com -t 'tmux a || tmux || /bin/bash'
Incluso puedo poner esto como parte de ProxyCommand dentro, ~/.ssh/config
pero el problema es que también estoy haciendo conexiones SSH como parte de scripts que simplemente ejecutan diferentes comandos en las máquinas remotas y no quiero tmux en este caso.
¿Cómo puedo lograr este comportamiento para que la invocación de tmux sea transparente y ocurra solo cuando ssh se recopila sin ningún parámetro/comando?
Respuesta1
Estás reinventando la rueda.
- InstalarByobo.
byobu-enable
Respuesta2
Resuelto agregando esto a ~/.bashrc
:
function ssh() {
if [ "$#" == "1" ]; then
if [ "${1:0:1}" != "-" ]; then
/usr/bin/ssh "$@" -t 'tmux a || tmux || /bin/bash'
else
/usr/bin/ssh "$@";
fi
else
/usr/bin/ssh "$@";
fi
}