tmux
2023-03-11
La commande tmux est très pratique.
Elle permet de créer des sessions distantes, d’y exécuter des commandes.
Vous pourrez retrouver ces sessions plus tard même si vous avez éteint votre machine ou avez été coupé par un VPN par exemple.
Sur la machine distante B, dans votre bashrc
function tm() {
tmux attach -t $1 || tmux new -s $1
}
Depuis votre machine A, créer votre session ou bien la rattacher
$ ssh B
$ tm jeff
Vous pouvez aussi utiliser tmux en local pour démarrer plusieurs applications et avoir pour chacunes d’elle une ligne de commande. Ca peut-être utile par exemple si vous souhaitez initialiser rapidement votre environnement de travail.
Ainsi, chaque matin, avec la commande make run-all
, je lance 4 applis (chacune dans un onglet tmux
) et j’ai une console bash en plus. C’est pratique et très efficace.
.PHONY: run-all
run-all:
@figlet -t $@
tmux start-server
tmux new -d -s monsvi -n bash
tmux new-window -t monsvi:1 -n svi
tmux send-keys -t monsvi:1 "make -C monsvi-svi-webapp run" C-m
tmux new-window -t monsvi:2 -n ihm
tmux send-keys -t monsvi:2 "make -C monsvi-ihmadm-webapp run" C-m
tmux new-window -t monsvi:3 -n fit
tmux send-keys -t monsvi:3 "make -C monsvi-fitnesse run" C-m
tmux new-window -t monsvi:4 -n aig
tmux send-keys -t monsvi:4 "make -C monsvi-aiguilleur run" C-m
tmux select-window -t 1
tmux attach -t monsvi