Domaine public 🅭

CMS minimal
ecrit avec VI

[ /  ^ < ]

terminal persistant

notes       22/11/2024

# tmux : une commande pour survivre aux deconnexions intempestives
# remplace  la commande screen
# les connexions sont cloisonnées par utilisateur
# le script byobu ajoute une ligne d'informations parametrable en bas de fenêtre

# pour commencer
tmux  [ new -s "nom de session" ]
[Ctrl]B $  # pour renomer la session en cours
.
.
[Ctrl]B d # pour quitter sans deconnecter

[Ctrl]B % # pour ouvrir une seconde sessions dans la même fenêtre

tmux ls   # list-sessions

tmux a [ -t n] # attach n° de sessions vu ci-dessus

# à mettre dans le fichier profile pour forcer l'usage:
test "$TMUX" || tmux a || tmux
exemple de .bash_profile

# pour partager via une connexion insecure utiliser: tmate qui ajoute du SSL
# à priorie inutle si connexion ssh et semble dépendre d'un serveur

        ===========
# screen : moins pratique que tmux mais plus répendue
# voir aussi dtach

screen -ls   # voir les sessions dĂ©jĂ  ouverte par le mĂȘme utilisateur

screen [-S toto]  # ouvre une nouvelle session

# pour détacher
[ctrl]A d


# pour reconnecet
screen -r [toto]

#un Ă  la fois

dtach permet de partager une session
To create a new session running command and attach to it:

$ dtach -c socket command

For example, to create a new session running bash with the socket located at /tmp/bashsession:

$ dtach -c /tmp/bashsession bash

To create a new session running command without attaching to it:

$ dtach -n socket command

Attach to a session

To attach to an existing session:

$ dtach -a socket
PB reinitalise l'écran

To attach to an existing session, and if not already existing, create it:
(bug attends une commande en parametre )
$ dtach -A socket nimportnawac

Detach from a session

In an attached session, type Ctrl+\. This key combination can be modified with the -e flag. 

un petit script à mettre dans .bash_profile pour utiliser systématiquement tmux
et retrouver facilement les sessions déjà ouvertes

if test "$TMUX"; then :; else
        CHX="$(tmux ls 2> /dev/null | awk -F ' 1 windows' '{print $1}')"
        CHX=" $(echo $CHX) "
        read -p "$CHX ou rien: "  REP
        test "$REP" && grep " $REP: " <<< "$CHX" && exec tmux a -t "$REP"
        test "$REP" && exec tmux new -s "$REP"
        exec tmux new -s "$(date +%a%Hh%M)"
fi
voir aussi Mosh (mobile shell) : teminal à distance sur connexion intermitente. Doit aussi ĂȘtre installĂ© sur le linux distant. Incompatible avec corkscrew et connect-proxy

ƒraηcois✉memoρersο.ƒr