El Linux tmux
Il comando è un multiplexer di terminale, Che cosa screen
. I suoi difensori sono molti e accesi, quindi abbiamo deciso di confrontare i due. è tmux
veramente meglio, O è solo un caso di preferire quello che sai?
tmux davanti allo schermo
Entrambi tmux
y GNU screen
comandi multiplexer terminali audio. Ti consentono di avere più finestre all'interno di una singola finestra di terminale e di passare da una all'altra. Una finestra può essere divisa in pannelli, ognuno dei quali ti dà una riga di comando separata.
Puoi anche disconnettere una sessione e diventa un'entità senza testa che viene eseguita in background; puoi anche chiudere la finestra del terminale che l'ha avviato. Quando sei pronto, puoi aprire una nuova finestra di terminale e riconnettere la sessione che è ancora in esecuzione. Puoi farlo anche tramite una connessione SSH.
Puoi disconnettere una sessione su un computer, vai a casa e accedi al computer remoto. Quando si riconnette, puoi riconnettere la sessione in background e usarla di nuovo in modo interattivo.
Qual è il comando sullo schermo??
il screen
Il comando è anche un multiplexer terminale ed è ricco di alternative. Per sapere tutto quello che puoi fare con esso, vedi il nostro post dettagliato.
Questa volta, stiamo andando a concentrarsi su tmux
. Mentre andiamo, menzioneremo come screen
gestisce la stessa caratteristica o funzione.
Solo una cosa ci ha infastidito screen
. Lo copriremo quando ci arriveremo, e vedremo se tmux
va meglio.
IMPARENTATO: Come usare il comando dello schermo di Linux
Installazione di Tmux
Tempo metereologico screen
generalmente installato per impostazione predefinita sulle distribuzioni Linux più diffuse, tmux
non è. Installare tmux
in Ubuntu, scrivi quanto segue:
sudo apt-get install tmux
A Manjaro puoi usare pacman
:
sudo pacman -Sy tmux
In Fedora 31, tmux
è già installato.
Avvia una sessione di tmux
Iniziare tmux
, basta digitarlo e premere Invio:
tmux
La finestra del terminale mostrerà una barra di stato quando sei in a tmux
sessione.
Il lato destro della barra di stato mostra il nome host, l'ora e la data. Il lato sinistro mostra le informazioni successive relative alla sessione:
- [0]: Questo è il nome della sessione. Per impostazione predefinita, sono numerati, a partire da zero. Prossimo, spieghiamo come puoi dare alle sessioni nomi significativi.
- 0: bussare *: Il 0 indica che questa è la prima finestra di questa sessione. L'unica procedura che viene eseguita in questa sessione è
bash
. Se esegui un programma, il tuo nome apparirà qui. L'asteriscotmux
significa che questa è la finestra che stai guardando. Ogni volta che crei una nuova finestra in a
sessione, il numero della finestra e il nome del programma in esecuzione in essa vengono aggiunti alla barra di stato. screen
il Il comando non ti dà una barra di stato per impostazione predefinita. Devi volare alla cieca e fidarti del tuo ingegno per sapere cosa sta succedendo, che richiede un po' di pratica. (A meno che tuimposta la tua barra di stato
.)
Il lato positivo, non perderai una sola riga di spazio nella finestra del terminale. Certo, Espanderei regolarmente la finestra del terminale per rendere utile l'utilizzo di un multiplexer di terminale. Quindi, perdere una riga per la barra di stato non è un grosso problema. Abbiamo lasciato le immagini delle finestre del terminale qui alla dimensione predefinita in modo che tu possa vedere le informazioni. tmux
I comandi sono dati a tmux
usando le sequenze di tasti, e ci sono due parti in questo. Primo, presidenza Ctrl + B per otteneretmux
Attenzione. Prossimo, premere rapidamente il tasto successivo per inviare un comando a
. I comandi vengono dati premendo le lettere, numeri, segni di punteggiatura o tasti freccia. screen
È lo stesso in
, tranne che premi Ctrl + A per attirare la tua attenzione.
Per chiudere la finestra, pressione Ctrl + B, e poi premi rapidamente X. La barra di stato diventa color ambra. Ti verrà quindi chiesto di confermare che vuoi chiudere la finestra.
Premi Y per chiudere la finestra o N se cambi idea. Non è necessario premere Invio dopo; Y o N è sufficiente per registrare la tua scelta.
Se premi Y, la finestra si chiude. Perché questa è l'unica finestra in questa sessione, la sessione finisce. tmux
il tmux
la sessione si chiude e torna alla riga di comando da cui è partita[uscito]. Vedrai “
"Nella finestra del terminale.
Questo può sembrare ovvio, ma è una conferma che hai chiuso la sessione e non l'hai lasciata disconnessa e funzionante. Discuteremo le sessioni di rottura di seguito..
Avvia una sessione tmux denominata tmux
Se inizi regolarmente screen
sessioni, apprezzerai rapidamente la funzionalità di dare a ciascuno di essi un nome significativo. Puoi nominare le sessioni in
, Cosa c'è di più, ma non vengono mostrati da nessuna parte nelle finestre della sessione. tmux
Iniziare new
con un nome di sessione, usa el -s
(nuova sessione) comando, e il
tmux new -s geek-1
(nome della sessione) opzione. La nostra sessione sarà chiamata “geek-1”, quindi scriviamo quanto segue: tmux
Quando il
Una sessione tmux con il nome “geek-1” sul lato sinistro della barra di stato.
Aggiungi più finestre dmesg
Per creare una nuova finestra nella sessione corrente, pressione Ctrl + SI poi DO. Otterrai una finestra di terminale vuota nella sessione corrente. Allora avremo qualcosa in esecuzione in questa nuova finestra, iniziamo il comando -w
con il
dmesg -w
(Continua) opzione: top
Ora abbiamo due finestre nella sessione; uno sta correndo dmesg
, e l'altro
. Nonostante questo, possiamo vederne solo uno alla volta (più su quello in un momento). tmux
Dai un'occhiata al lato sinistro della barra di stato. Siamo ancora nel “geek-1” dmesg
sessione. Alla finestra zero, la parte superiore sta correndo, e nella finestra uno, dmesg
sta correndo. L'asterisco
dopo
- ci dice quale finestra è visibile.Per saltare tra le finestre, pressione Ctrl + B, e poi uno dei seguenti tasti: Nord
- : Mostra finestra successiva.
- PAG: Mostra la finestra precedente.
0 un 9:
Visualizza una finestra numerata del 0 al 9.
Puoi anche selezionare una finestra da un elenco. Se premi Ctrl + B e poi W, viene visualizzato un elenco di finestre.
Per spostare la barra di evidenziazione color ambra, premi le frecce su o giù, Inizio o fine. La sezione inferiore dello schermo mostra un'anteprima del contenuto nella finestra evidenziata.
Premi Invio per andare alla finestra evidenziata o Esc per uscire dall'elenco delle finestre senza cambiare.
Stacca e collega le sessioni top
Se premi Ctrl + B e poi D, disconnetterà la sessione. Continuerà a funzionare in background, ma non sarai in grado di vederlo o interagire con esso.
Abbiamo iniziato tmux
nella sessione, quindi abbiamo una procedura in corso per dimostrarlo. Dopo, premiamo Ctrl + B, e poi D. La sessione scompare e diventa una sessione in background.
Torniamo alla finestra del terminale originale. C'è un messaggio da attach-session
dicendoci che la sessione è separata. Ci ricorda anche il nome che abbiamo dato alla sessione. Questo è utile perché è ciò che usiamo per allegare una sessione in background e quindi ripristinarla in una interattiva.. -t
Per allegare una sessione separata, useremo l'autoesplicativo
comando con il
tmux attach-session -t geek-1
(sessione di destinazione) opzione. Forniremo anche il nome della sessione che vogliamo ricordare.
Scriviamo quanto segue:
screen
La nostra sessione ritorna e diventa di nuovo una sessione interattiva visibile.
Qualsiasi procedura di lunga durata o continua avviata prima di disconnettere la sessione continuerà a essere eseguita in background (a meno che non siano finiti) quando allego la sessione.
può farlo, ma non così intuitivamente. tmux
Gestire più sessioni
tmux new -s geek-2
Apriamo un'altra finestra di terminale e iniziamo una nuova dmesg
sessione chiamata “disadattato-2”:
dmesg -w
In quella sessione, inizieremo tmux
:
Ora, abbiamo il nostro “geek-1” originale dmesg
sessione e una nuova chiamata “disadattato-2”.
La barra di stato ci mostra che questa sessione è stata chiamata “disadattato-2”, e ha una finestra che funziona
Se premiamo Ctrl + B, e poi D, separiamo quella sessione. tmux
Geek-2 sessione tmux separata in un terminale widnow. tmux
di nuovo nel “geek-1”
sessione, premiamo Ctrl + B, e poi Y per vedere un elenco di
sessioni.
per essere chiari, questo è un elenco di sessioni. La schermata equivalente che abbiamo visto in precedenza era un elenco di finestre in una singola sessione.
Puoi spostare la barra evidenziata in ambra premendo le frecce su e giù, Inizio e fine. La sezione inferiore mostra un'anteprima del contenuto della sessione evidenziata.
Se premi la freccia destra, vengono visualizzate le finestre della sessione evidenziata. tmux
Premi Invio per andare alla sessione o finestra evidenziata o Esc per uscire dall'elenco delle sessioni senza modificare le sessioni. Se selezioni una nuova sessione, quello attuale è disconnesso e quello che hai selezionato è attaccato.
Separiamo la sessione “disadattato-2” prima di farlo. Nonostante questo, puoi farlo con le sessioni che sono ancora connesse alle loro finestre di terminale originali. Quando io faccio, le modifiche dello schermo appariranno contemporaneamente su entrambi screen
sessioni.
il
Il comando può farlo anche tramite un insieme equivalente di comandi.
Lavora con i vetri delle finestre tmux ls
Se premi Ctrl + B e poi doppie virgolette (“”), divide la finestra orizzontalmente in due pannelli.
Questo ha effetto solo sulla finestra corrente; gli altri nella sessione non verranno modificati. Abbiamo usato il
comando nel riquadro in alto per elencare le finestre in questa sessione. Ci sono due, e la riga di stato ci dice che siamo nella finestra uno. Se saltiamo alla finestra zero premendo Ctrl + B, poi 0 (zero), vediamo che è come l'abbiamo lasciato.
uname -a
ls -hl
Queste sono due righe di comando indipendenti, non due viste in una finestra; sono gusci distinti e separati. Possiamo mostrarlo eseguendo un comando diverso in ogni pannello.
Per passare da un pannello all'altro, pressione Ctrl + B e poi le frecce su, fuori uso, sinistra o destra.%)
Due comandi diversi su due pannelli in una sessione tmux in un terminale vedovo.
Se premi Ctrl + B e poi il segno di percentuale ( tmux
divide verticalmente il pannello corrente.
Ctrl pressione + B e poi Q da fare tmux
visualizzare brevemente il numero di ogni pannello.
Questi numeri vengono utilizzati nelle indicazioni e nei messaggi di
. Ctrl pressione + B e poi X per chiudere il pannello corrente. La barra di stato diventa color ambra e ti viene chiesto di confermare che vuoi chiudere quel numero di pannello. Premi Y per rimuovere il pannello, o N per lasciare le cose come stanno. screen
Se premi Y, il pannello viene rimosso. screen
il
Il comando ha anche dei pannelli, ma, ancora, sono meno intuitivi da usare. Cosa ci dà fastidio
In altre parole, se disconnetti una sessione con pannello, scompare quando ti riconnetti a quella sessione. Questo invecchia molto rapidamente. tmux
A Ctrl + B Cheat Sheet
Abbiamo incluso un cheat sheet dei diversi comandi che puoi usare in
- sotto. Comandi di sessione
- S: Elenca le sessioni.
- PS Rinomina la sessione corrente.
- D: Stacca la sessione corrente.
tmux
Ctrl + B, poi?:
Mostra la pagina di aiuto in
- . Comandi della finestra
- C: Crea una nuova finestra.
- ,: Rinomina la finestra corrente.
- W: Elenca le finestre.
- NORD: Vai alla finestra successiva.
- PAG: Vai alla finestra precedente.
0 un 9:
- Vai al numero di finestra specificato. Comandi del pannello
- %: Crea una divisione orizzontale.
- “: Crea una divisione verticale.
- H o freccia sinistra: Vai al pannello di sinistra.
- I o freccia destra: Vai al pannello di destra.
- J o freccia giù: Vai al pannello qui sotto.
- K o freccia su:Vai al pannello sopra.
- Q : Visualizza brevemente i numeri del pannello.
- oh: Scorri i pannelli in ordine. Ogni pressione ti porta al successivo, finché non passa attraverso tutto.
- }: Scambia la posizione del pannello corrente con il successivo.
- {: Scambia la posizione del pannello corrente con quello precedente.
X:
Chiudi pannello corrente. screen
Come si confrontano? tmux
In termini di funzionalità, tmux
e
entrambi funzionano in modo equivalente e offrono le stesse caratteristiche principali. È il modo in cui accedi a quelle funzioni che è notevolmente diverso.. tmux
offre modi più semplici e convenienti per accedere alle varie funzioni. Nonostante questo, non è l'unica differenza.
screen
La possibilità di rinominare sessioni e finestre in
è ordinato, e il fatto che tu mantenga le tue dashboard quando ricolleghi una sessione è un punto di svolta. tmux
, d'altra parte, perdere assolutamente i pannelli quando si disconnette e si riconnette una sessione. Questo è abbastanza fastidioso da evitare in primo luogo la separazione..
C'è molto di più da
, comprese le sue capacità di scripting incredibilmente flessibili. Lo devi a te stesso per verificarlo.