Comment créer le script
Ce script va vérifier si une session existe. Si la session n'existe pas, il crée une nouvelle session et s'y attache. Si la session existe, rien ne se passe et nous nous attachons à cette session. N'hésitez pas à remplacer `~/development' par le nom du projet.
$ touch ~/development && chmod +x ~/development
# ~/development
tmux has-session -t development
if [ $? != 0 ]
then
tmux new-session -s development
fi
tmux attach -t development
Nouvelle session à partir du terminal
Créons deux sessions détachées, listons-les, attachons nous à l'une d'entre elles et ensuite, à partir de tmux, faisons le tour des sessions.
tmux new -s name -d
fonctionne depuis l'intérieur de tmux parce que nous créons une nouvelle session détachée. Sinon, vous obtiendrez une erreur d'imbrication.
$ tmux new -s development -d
$ tmux new -s foo -d
$ tmux ls
> development: 1 windows (created Wed Jan 13 11:31:38 2016) [204x54]
> foo: 1 windows (created Wed Jan 13 11:31:38 2016) [204x54]
$ tmux attach -t
$ tmux ls
> development: 1 windows (created Wed Jan 13 11:31:38 2016) [204x54] (attached)
> foo: 1 windows (created Wed Jan 13 11:31:38 2016) [204x54]
Nouvelle session à partir de tmux
Nous sommes maintenant à l'intérieur ou mieux connu comme ci-joint à notre session cible. Si nous essayons de créer une nouvelle session alors que nous sommes attachés, une erreur d'imbrication se produira.
$ tmux new -s bar
> sessions should be nested with care, unset $TMUX to force
Pour résoudre ce problème, nous créons une nouvelle session détachée, par exemple,
$ tmux new -s bar -d
$ tmux ls
> development: 1 windows (created Wed Jan 13 11:31:38 2016) [204x54] (attached)
> foo: 1 windows (created Wed Jan 13 11:31:38 2016) [204x54]
> bar: 1 windows (created Wed Jan 13 17:19:35 2016) [204x54]
Cycle (interrupteur) Sessions
-
Prefix
(
session précédente
-
Prefix
)
session suivante
note : Prefix
es Ctrl-b
par défaut. Vous pouvez lier Prefix
a Ctrl-a
et dans Mac OSX, vous pouvez changer le verrouillage des majuscules en ctrl. system preferences > keyboard > modifier keys
S'attacher à une session en utilisant le mode commande à l'intérieur de tmux
Si vous essayez de vous attacher à une session sans la détacher, vous obtiendrez une erreur.
$ tmux attach -t development
> sessions should be nested with care, unset $TMUX to force
Utilisez plutôt le mode commande Prefix
:
puis tapez attach -t session_name
et appuyez sur la touche Entrée.