Come creare lo script
Questo script controllerà se esiste una sessione. Se la sessione non esiste, crea una nuova sessione e collegala. Se la sessione esiste non accade nulla e ci colleghiamo a quella sessione. Sentiti libero di sostituire "~ / development" con il nome del progetto.
$ touch ~/development && chmod +x ~/development
# ~/development
tmux has-session -t development
if [ $? != 0 ]
then
tmux new-session -s development
fi
tmux attach -t development
Nuova sessione dal terminale
Creiamo due sessioni separate, le elenciamo, le colleghiamo a una e poi dall'interno di tmux passiamo in rassegna le sessioni.
tmux new -s name -d
funziona dall'interno di tmux perché stiamo creando una nuova sessione distaccata. Altrimenti riceverai un errore di nidificazione.
$ 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]
Nuova sessione da tmux
Ora siamo dentro o meglio conosciuti come attaccati alla nostra sessione target. Se proviamo a creare una nuova sessione mentre siamo collegati, si verificherà un errore di annidamento.
$ tmux new -s bar
> sessions should be nested with care, unset $TMUX to force
Per risolvere questo problema creiamo una nuova sessione distaccata. per esempio,
$ 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]
Sessioni di ciclo (scambio)
Prefix
(
sessione precedente
Prefix
)
prossima sessione
nota: Prefix
è l' Ctrl-b
impostazione predefinita. Puoi collegarti Prefix
a Ctrl-a
e in Mac OSX puoi cambiare Caps Lock in ctrlsystem preferences > keyboard > modifier keys
Collegarsi a una sessione utilizzando la modalità di comando all'interno di tmux
Se si tenta di collegarsi a una sessione senza scollegarsi, verrà generato un errore.
$ tmux attach -t development
> sessions should be nested with care, unset $TMUX to force
Usa invece la modalità di comando, Prefix
:
quindi digita attach -t session_name
e premi invio.