Come usare TMUX su Linux

Come usare TMUX su Linux
TMUX sta per il multiplexer terminale.

Perché tmux

Un programma che è attualmente in esecuzione sul computer è un processo. Per eseguire più di un processo con Linux, è necessario più di una finestra terminale: una finestra terminale per processo. Queste finestre si sovrappongono, con alcuni che coprono quasi altri. Per occuparsi di un processo, devi fare clic sulla finestra per portarla in primo piano. Quando è in prima linea, è possibile vedere alcuni risultati o dati di input. Questo è il multitasking: eseguire più di un processo contemporaneamente; In questo caso, con finestre diverse. È multitasking senza l'uso di tmux. TMUX offre il multiplexing come sostituto migliore - vedi sotto.

Ogni finestra utilizza una shell come bash. I comandi del programma devono essere digitati in una shell prima di essere eseguiti.

Una sessione è un intrecciato temporaneo di messaggi tra un utente e il suo computer o tra il computer dell'utente e un computer remoto attraverso una rete fisica. Un processo può comportare tale intrecciazione di messaggi. Lavorare con una finestra è una sessione. Lavorare con molte finestre in una durata è ancora una sessione.

L'uso della finestra terminale in Linux per il multitasking, come dimostrato sopra, può diventare ingombrante quando il numero di processi è più di tre e i processi sono lunghi.

Il multitasking può essere eseguito in una finestra del terminale, ma con i seguenti svantaggi:

Se si avvia un processo con una finestra terminale e si desidera avviarne un'altra, dovresti mettere in pausa il primo prima. Quando metti in pausa un processo, il processo si ferma e non sta facendo nulla. Puoi quindi iniziare il processo successivo. Se finisci il processo successivo abbastanza presto, puoi riprendere il primo processo, ancora nella stessa finestra. Sembra un multiplexing terminale, ma non lo è. Con il multiplexing terminale, i processi dovrebbero essere eseguiti contemporaneamente.

Più di un processo può essere eseguito in una finestra terminale utilizzando uno schema asincrono. Tuttavia, diversi processi invieranno risultati alla stessa finestra e i risultati visualizzati saranno incoerenti. Inoltre, man mano che inserisci i dati, andranno a processi diversi. Questo schema può funzionare solo quando hai pochi processi e conosci tutti i loro risultati, per essere in grado di sapere quali input inviati e quando. È improbabile che si verifichi questa situazione di pochi processi.

Con una finestra del terminale, è possibile avviare un processo su un computer remoto, quindi la connessione fisica non riesce. Quando la connessione viene ripristinata, i risultati saranno inaffidabili.

Un altro svantaggio con le finestre del terminale convenzionale è che la comunicazione non può avvenire tra le finestre quando viene aperta più di una finestra.

TMUX è un programma software che risolve questi problemi. Questo articolo spiega come TMUX risolve questi problemi e discute alcune delle funzionalità aggiuntive di TMUX.

Contenuto dell'articolo

  • Soluzione offerta da tmux
  • Installazione di TMUX in Linux
  • Avvio di TMUX
  • Creazione di più di una finestra TMUX
  • Uccidere la finestra attuale
  • Collegamento e distacco di una sessione di finestra TMUX
  • Finestre di divisione
  • Conclusione

La soluzione offerta da TMUX

Come indicato sopra, la finestra del terminale ha limitazioni per il multitasking. TMUX supera queste limitazioni. TMUX sostituisce la finestra del terminale con la propria finestra mentre è attiva. TMUX può avere più di una finestra. Le finestre aggiunte si supergono l'una sull'altra. È possibile passare tra queste finestre sovrapposte. E quindi, i risultati non sono mescolati, gli input e i risultati non sono mescolati. Una finestra TMUX può essere divisa in Windows più piccole. Queste finestre più piccole sono chiamate vetri.

Con il terminale convenzionale, se si esegue un processo remoto e la connessione non riesce, potresti non essere in grado di continuare da dove si è interrotta quando viene ripristinata la connessione. Cioè, i risultati del processo remoto del computer remoto non sarebbero affidabili. TMUX può risolverlo staccando una sessione di finestra e quindi riattacco in seguito.

In ogni finestra, la shell (E.G., Bash) opera per gestire i comandi.

Installazione di TMUX in Linux

Forse TMUX è già installato sul tuo computer. Quindi, devi verificare se è installato per primo per non reinstallare. Nel prompt dei comandi del terminale, digita

TMUX -VERSION

e premere Invio.

Se non è installato, te lo dirà. Se è installato, avrai un feedback come,

Utilizzo: tmux [-2cluvv] [-c shell-comand] [-f file] [-l socket-name]
[-S Socket-Path] [Command [Flags]]

I comandi in questo tutorial sono stati testati con Ubuntu e hanno funzionato bene. Quindi, se stai attualmente utilizzando il sistema operativo Ubuntu, puoi testare i comandi mentre leggi insieme.

Installazione di TMUX in Ubuntu e Debian
Per installare in uno di questi sistemi operativi, digita

SUDO APT Installa tmux

e premere Invio. Se ti chiede la password, digita la password e premi Invio.

Installazione di TMUX in CentOS e Fedora
Per installare in CentOS o Fedora, digita

sudo yum installa tmux

e premere Invio. Rispondi a qualsiasi domanda che venga posta.

Avvio di TMUX

TMUX è un'utilità che deve essere avviata prima che possa essere utilizzata. Quando si apri la finestra del terminale, TMUX non è in esecuzione. Può essere avviato e fermato. Quando viene avviato, impiega il controllo della finestra del terminale e sovrappone le proprie finestre. Quando viene fermato, sei tornato alla finestra del terminale. Per avviare tmux, digita

tmux

(tutti i caratteri in minuscolo) e premere Invio. Avrai una nuova finestra. TMUX avrebbe preso il controllo della nuova finestra. La nuova finestra assomiglia alla finestra del terminale ma con una barra di stato nella parte inferiore. In questa situazione, la barra di stato indica che sei alla finestra TMUX 0, mostrata come 0: bash (se si utilizza la shell bash).

La combinazione chiave predefinita per TMUX è:

Ctrl+b

Si preme il tasto di controllo e il carattere b minuscolo e non appena si rilascia i tasti, si preme un altro carattere per influenzare. Per visualizzare l'elenco dei comandi TMUX, digita

Ctrl+b ?

Cioè, premere il tasto di controllo e il carattere B contemporaneamente, e non appena si rilasciano i due tasti, premere Shift e il? Chiave (se si utilizza la tastiera inglese). Dovresti vedere l'elenco dei comandi. L'elenco è piuttosto lungo. Il cursore sarebbe in cima. È possibile utilizzare il tasto freccia giù per scorrere verso il basso l'elenco.

Per uscire dal display dell'elenco, premere

Q

E tornerai al prompt dei comandi.

Uscire dalla finestra corrente
Per uscire dalla finestra corrente, digita

Uscita

e premere Invio. Vedrai

[uscito]

Indicando che sei uscito dall'applicazione TMUX (se fosse stata aperta una sola finestra TMUX). Dovresti tornare alla normale finestra del terminale se avessi una sola finestra TMUX. Se si esegue di nuovo il comando "Esci", la finestra del terminale normale si chiuderà.

Creazione di più di una finestra TMUX

Nella sezione sopra, è stata creata solo una finestra. Quando si avvia TMUX, viene creata una finestra (0: bash). Puoi creare di più. Se non hai aperto la finestra del terminale, aprila e avvia TMUX digitando,

tmux

e premendo Invio. La finestra del terminale dovrebbe trasformarsi in una finestra TMUX, la prima finestra di TMUX. Crea altre tre finestre di schermata digitando i seguenti comandi e premendo ENTER, dove C è in minuscolo (e non ha bisogno di un tasto Shift):

ctrl+b c
ctrl+b c
ctrl+b c

Per ciascuno dei comandi, si preme il tasto di controllo e il tasto B (in minuscolo); Rilascia questi tasti e quindi premi il tasto C. Potrebbe essere necessaria una breve esperienza per farlo bene. Se hai eseguito correttamente i tre comandi e se stai usando la shell bash, allora nella barra di stato, dovresti vedere

[0] 0: Bash 1: Bash 2: Bash- 3: Bash*

[0] significa sessione 0. Il resto della linea significa che hai aperto quattro finestre, che sono 0: bash, 1: bash, 2: bash e 3: bash. Il conteggio di TMUX Windows inizia da 0.

Per andare a qualsiasi altra finestra, eseguire il seguente comando:

ctrl+b s

Dovresti vedere una presentazione diversa, un elenco di presentazioni di Windows. È possibile evidenziare l'etichetta della finestra che si desidera usando il tasto di freccia a sinistra o il tasto di freccia destra sulla tastiera. Utilizzare il tasto di freccia a destra per scegliere la finestra numero 1, che è in realtà la seconda finestra, e premere Invio.

Se avessi digitato qualche comando nella seconda finestra, dovresti vedere i comandi nella finestra. Nella barra di stato, dovresti anche vedere 1: bash*. L'asterisco (*) indica la finestra in cui ti trovi e, in questo caso, è la finestra numero 1, che è in realtà la seconda finestra.

Puoi continuare a digitare qualsiasi comando tu voglia in questa seconda finestra. Puoi passare a qualche altra finestra, allo stesso modo.

Passa ad altre finestre
È possibile passare a un'altra finestra utilizzando il metodo sopra. C'è un altro metodo: passare alla finestra numero 3 (la quarta finestra), eseguire

ctrl+b 3

Ora dovresti averlo,

3: Bash*

Con l'asterisco nella barra di stato, il che significa che sei nella quarta finestra. Quindi, per andare a una nuova finestra, puoi fare "indice ctrl+b", in cui un indice è un numero ordinale meno uno.

Andare alle finestre successive e precedenti
Per andare alla finestra successiva, fai

ctrl+b n

Se fossi alla seconda finestra, arriveresti alla terza finestra. Se fossi all'ultima finestra, arriveresti alla prima finestra. Per andare alla finestra precedente, fai

ctrl+b p

Se fossi alla prima finestra, arriveresti all'ultima finestra.

Elenco tutte le finestre
Per elencare tutte le finestre, fai

ctrl+b w

Nell'elenco che appare, sarai in grado di scegliere la finestra successiva che desideri, con la tastiera up-arrow o il down-arrow. Dopo aver evidenziato, premere il tasto Invio per accedere alla finestra scelta.

Uscendo da una finestra
Per uscire da un tipo di finestra,

Uscita

e premere Invio. È possibile uscire tutte le finestre eseguendo ripetutamente il comando di uscita. Se lo fai il numero di volte, corrispondente al numero di finestre TMUX, arriverai alla finestra del terminale, che è stato rilevato dall'utilità TMUX; E vedrai:

[uscito]

Se esegui di nuovo il comando di uscita, chiuderai la finestra del terminale.

Uccidere la finestra attuale

Quando uccidi una finestra, la uccidi con il suo processo. Per uccidere una finestra, fai

ctrl+b &

Apparirà un messaggio simile a quello seguente, chiedendoti se vuoi davvero uccidere la finestra.

Kill-Window Bash? (y/n)

Se vuoi davvero uccidere la finestra, premere Y e la finestra verrà uccisa se non si desidera uccidere la finestra, premere N.

Allegato e distacco di una sessione TMUX

Una finestra TMUX non è usata solo per lavorare sul personal computer locale. Può essere utilizzato per eseguire un processo su un computer remoto. Quando la finestra funziona per il personale personale locale o esegue un processo in un computer remoto, si dice che la finestra sia allegata. Nel caso di un processo remoto, se si è staccati la finestra e la connessione si interrompe, il risultato del processo al computer remoto sarà comunque affidabile. Naturalmente, il processo nel computer remoto può fermarsi - non è un problema.

Quando la connessione viene ripristinata, puoi continuare da dove ti sei interrotto.

È possibile staccarsi dalla sessione corrente eseguendo:

ctrl+b d

Se il comando ha esito positivo, uscirai dalle finestre TMUX e nella finestra del terminale, con il prompt dei comandi. Prima del prompt, e sopra di essa, dovresti vedere qualcosa di simile:

[distaccato (dalla sessione 0)]

Ora che sei alla finestra del terminale, per visualizzare l'elenco delle sessioni, digitare

tmux ls

e premere Invio. La prima colonna dell'elenco fornisce il nome della sessione. Nel caso di questo articolo, dovrebbe esserci solo una sessione con il nome 0. Quindi, per reattach alla sessione, digita

TMUX ANCAD -T 0

e premere Invio.

Uccidere una sessione
Dalla finestra del terminale, puoi uccidere una sessione. Dovresti essere distaccato da una sessione prima di ucciderla. La sintassi per uccidere una sessione dalla finestra del terminale è:

TMUX Kill -Session -t Nome sessione

Finestre di divisione

Dividere verticalmente
Per dividere la finestra corrente in verticale, fai

ctrl+b %

Se si utilizza la tastiera inglese, dovrai premere il tasto Shift e il tasto che ha % per ottenere %. Se lo facessi, allora avresti una linea verticale nel mezzo della finestra.

Per andare al riquadro successivo, fai

ctrl+b o

Dove o non è zero, è il carattere dell'alfabeto, o. Il movimento è ciclico. In questa condizione, è una finestra che è stata divisa in vetri. Le altre finestre non hanno vetri. In una finestra con i panni, i comandi possono essere digitati in ciascuno dei vetri.

Uccidere un riquadro
Per uccidere un riquadro con i suoi comandi, mentre il cursore è nel riquadro, fai

ctrl+b x

Dove x è minuscola x, rispondi a qualsiasi domanda posta. Il riquadro muore con i suoi comandi. I comandi non si uniscono ai comandi di nessun altro riquadro.

Dividere in orizzontale
Per dividere la finestra corrente in orizzontale, fai

ctrl+b "

Se si utilizza la tastiera inglese, dovrai premere il tasto Shift e il tasto che ha ", per ottenere".

Per andare al riquadro successivo, fai

ctrl+b o

Dove o non è zero, è il carattere dell'alfabeto, o. Il movimento è ciclico.

Uccidi un riquadro orizzontale allo stesso modo in cui uccidi un riquadro verticale.

Conclusione

TMUX è un'applicazione che consente a un utente Linux di avere la sua sessione di finestre del terminale in una finestra. Ogni finestra può essere divisa in vetri. La combinazione chiave predefinita per TMUX è Ctrl+B. Successivamente, un altro personaggio deve essere premuto per ottenere un effetto. Con tutte le sue caratteristiche, TMUX è un multiplexer Terminal di Windows Manager. TMUX ha un rivale chiamato schermo. Il multiplexing qui significa avere tutte le finestre per i suoi processi in una cornice di una finestra.

Chrys