Comment créer le script
Ce script vérifiera si une session existe. Si la session n'existe pas, créez une nouvelle session et attachez-la. 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 depuis le terminal
Créons deux sessions détachées, listons-les, attachons-nous à une, puis depuis tmux, parcourons les sessions.
tmux new -s name -d
fonctionne depuis l'intérieur de tmux car 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 depuis tmux
Nous sommes maintenant à l'intérieur ou mieux connus comme attachés à notre session cible. Si nous essayons de créer une nouvelle session en étant attaché, cela entraînera une erreur d'imbrication.
$ 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 (commutateur) de sessions
Prefix
(
session précédente
Prefix
)
prochaine session
remarque: Prefix
est Ctrl-b
par défaut. Vous pouvez vous lier Prefix
à Ctrl-a
et dans Mac OSX, vous pouvez changer le verrouillage des majuscules en ctrlsystem preferences > keyboard > modifier keys
Joindre à une session en utilisant le mode commande à l'intérieur de tmux
Toute tentative de connexion à une session sans se détacher entraînera 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 Entrée.