Come usare tmux su Linux (e perché è meglio dello schermo)
fatmawati achmad zaenuri/Shutterstock.com
Il Linux |_+_| comando è un multiplexer di terminale, Piace |_+_|. I suoi sostenitori sono molti e accesi, quindi abbiamo deciso di confrontare i due. È |_+_| davvero meglio, o si tratta solo di preferire quello che sai?
tmux contro schermo
Sia il |_+_| e GNU |_+_| comandi sono multiplexer terminali? . Ti consentono di avere più finestre all'interno di una singola finestra di terminale e di saltare avanti e indietro tra di esse. Una finestra può essere suddivisa in riquadri, ognuno dei quali fornisce una riga di comando indipendente.
IMPARENTATO 10 comandi di base di Linux per principianti
Puoi anche scollegare una sessione e diventa un'entità senza testa in esecuzione in background: puoi persino chiudere la finestra del terminale che l'ha avviata. Quando sei pronto, puoi aprire una nuova finestra del terminale e ricollegare la sessione ancora in esecuzione. Puoi anche farlo da capo una connessione SSH .
Puoi scollegare una sessione su un computer, tornare a casa e accedere al computer remoto. Una volta riconnesso, puoi ricollegare la sessione in background e utilizzarla di nuovo in modo interattivo.
Qual è il comando dello schermo?
Il |_+_| command è anche un multiplexer di terminale ed è ricco di opzioni. Per i dettagli su tutto ciò che puoi fare con esso, dai un'occhiata al nostro articolo di approfondimento .
Annuncio pubblicitarioQuesta volta, andremo a concentrati su |_+_| . Andando avanti, menzioneremo come |_+_| gestisce la stessa caratteristica o funzione.
Solo una cosa ci ha infastidito di |_+_|. Ne parleremo quando ci arriveremo, e vedremo se |_+_| va meglio.
IMPARENTATO: Come usare il comando dello schermo di Linux
Installazione di tmux
Mentre |_+_| è generalmente installato di default sulle distribuzioni Linux più diffuse, |_+_| non lo è. Per installare |_+_| su Ubuntu, digita quanto segue:
tmux
Su Manjaro puoi usare |_+_|:
screen
Su Fedora 31, |_+_| è già installato.
Avvio di una sessione tmux
Per iniziare |_+_|, digitalo e premi Invio:
tmux
La finestra del terminale mostrerà una barra di stato quando ti trovi in un |_+_| sessione.
Il lato destro della barra di stato mostra il nome host, l'ora e la data. Il lato sinistro mostra le seguenti informazioni relative alla sessione:
- & rsaquo; Cyber Monday 2021: le migliori offerte Apple
- & rsaquo; Cyber Monday 2021: le migliori offerte tecnologiche
- › Come trovare il tuo Spotify Wrapped 2021
- › 5 siti Web che ogni utente Linux dovrebbe aggiungere ai segnalibri
- › La cartella del computer è 40: come la star di Xerox ha creato il desktop
- › Funzioni e formule in Microsoft Excel: qual è la differenza?
Il |_+_| il comando non ti dà una barra di stato per impostazione predefinita. Devi volare alla cieca e fare affidamento sul tuo ingegno per sapere cosa sta succedendo, il che richiede un po' di pratica. (A meno che tu configura la tua barra di stato .)
Tra i lati positivi, non perderai una linea di immobili nella finestra del terminale. Ovviamente, normalmente espandi la finestra del tuo terminale per rendere utile l'utilizzo di un multiplexer di terminale. In tal caso, la perdita di 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.
Annuncio pubblicitarioI comandi sono dati a |_+_| usando le sequenze di tasti, e ci sono due parti a questo. Per prima cosa, premi Ctrl+B per ottenere l'attenzione di |_+_|. Quindi premi rapidamente il tasto successivo per inviare un comando a|_+_|. I comandi vengono dati premendo lettere, numeri, segni di punteggiatura o tasti freccia.
È lo stesso in |_+_|, tranne che premi Ctrl+A per attirare la sua attenzione.
Per chiudere la finestra, premi Ctrl+B, quindi premi rapidamente X. La barra di stato diventa color ambra. Ti viene quindi richiesto di confermare che desideri eliminare la finestra.
Premi Y per chiudere la finestra o N se cambi idea. Non è necessario premere Invio in seguito; Y o N è sufficiente per registrare la tua scelta.
Se si preme Y, la finestra si chiude. Poiché questa è l'unica finestra in questa sessione, la sessione viene terminata.
Il |_+_| la sessione viene chiusa e torni alla riga di comando da cui hai lanciato |_+_|. Vedrai [uscito] nella finestra del terminale.
Annuncio pubblicitarioPotrebbe sembrare che stia affermando l'ovvio, ma è una conferma che hai chiuso la sessione e non l'hai lasciata staccata e in esecuzione. Discuteremo le sessioni di distacco di seguito.
Avvio di una sessione tmux denominata
Se avvii regolarmente più |_+_| sessioni, apprezzerai rapidamente la funzionalità di dare a ciascuna di esse un nome significativo. Puoi anche nominare le sessioni in |_+_|, ma non vengono visualizzate da nessuna parte nelle finestre della sessione.
Per iniziare |_+_| con un nome di sessione, usa |_+_| (nuova sessione) e il comando |_+_| (nome sessione). La nostra sessione si chiamerà geek-1, quindi digitiamo quanto segue:
tmux
Quando il |_+_| carica di sessione, geek-1 viene visualizzato come prima voce nella barra di stato, all'estrema sinistra.
Aggiungere altre finestre
Per creare una nuova finestra nella sessione corrente, premi Ctrl+B e poi C. Otterrai una finestra di terminale vuota nella sessione corrente. Quindi avremo qualcosa in esecuzione in questa nuova finestra, iniziamo il |_+_| comando con il |_+_| (segui) opzione:
screen
Ora abbiamo due finestre nella sessione; uno è in esecuzione |_+_| e l'altro |_+_|. Tuttavia, possiamo vederne solo uno alla volta (ne parleremo più avanti tra un momento).
Annuncio pubblicitario
Dai un'occhiata al lato sinistro della barra di stato. Siamo ancora nel geek-1 |_+_| sessione. Nella finestra zero, top è in esecuzione, e nella finestra uno, |_+_| sta correndo. L'asterisco (*) dopo |_+_| ci dice quale finestra è visibile.
Per passare da una finestra all'altra, premi Ctrl+B, quindi uno dei seguenti tasti:
Puoi anche scegliere 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ù, Home o Fine. La sezione inferiore del display mostra un'anteprima del contenuto nella finestra evidenziata.
Premi Invio per passare alla finestra evidenziata o Esc per uscire dall'elenco delle finestre senza cambiare.
Distacco e collegamento di sessioni
Se premi Ctrl+B e poi D, staccherai la sessione. Continuerà a funzionare in background, ma non sarai in grado di vederlo o interagire con esso.
Annuncio pubblicitarioAbbiamo iniziato |_+_| nella sessione, quindi abbiamo un processo in esecuzione con cui dimostrare. Quindi, 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 |_+_| dicendoci che la sessione è distaccata. 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.
Per allegare una sessione separata, utilizzeremo l'autoesplicativo |_+_| comando con |_+_| (sessione di destinazione). Forniremo anche il nome della sessione che desideriamo ricordare.
Digitiamo quanto segue:
screen
La nostra sessione ritorna e diventa di nuovo una sessione visibile e interattiva.
Tutti i processi di lunga durata o continui che hai avviato prima di scollegare la sessione continueranno a essere eseguiti in background (a meno che non siano terminati) quando colleghi la sessione.
|_+_| può farlo, ma non così intuitivamente.
Gestire più sessioni
Apriamo un'altra finestra di terminale e iniziamo una nuova |_+_| sessione chiamata geek-2:
tmux
In quella sessione, inizieremo |_+_|:
screen
Annuncio pubblicitario
Ora abbiamo il nostro geek-1 originale |_+_| sessione e uno nuovo chiamato geek-2.
La barra di stato ci mostra che questa sessione si chiama geek-2 e ha una finestra che esegue |_+_|.
Se premiamo Ctrl+B e poi D, stacchiamo quella sessione.
Di nuovo nel geek-1 |_+_| sessione, premiamo Ctrl+B e poi S per vedere un elenco di |_+_| sessioni.
Per essere chiari, questo è un elenco di sessioni. La visualizzazione simile che abbiamo visto in precedenza era un elenco di finestre in una singola sessione.
Puoi spostare la barra di evidenziazione color ambra premendo le frecce su e giù, Home e Fine. La sezione inferiore mostra un'anteprima del contenuto nella sessione evidenziata.
Annuncio pubblicitario
Se si preme la Freccia destra, vengono visualizzate le finestre della sessione evidenziata.
Premere Invio per passare alla sessione o finestra evidenziata o Esc per uscire dall'elenco delle sessioni senza modificare le sessioni. Se selezioni una nuova sessione, quella attuale si stacca e quella che hai selezionato viene allegata.
Abbiamo staccato la sessione geek-2 prima di farlo. Tuttavia, puoi farlo con le sessioni che sono ancora collegate alle finestre del terminale originale. Quando lo fai, qualsiasi modifica dello schermo apparirà contemporaneamente in entrambi |_+_| sessioni.
Il |_+_| anche il comando può farlo tramite un insieme di comandi simile.
Lavorare con i vetri delle finestre
Se si preme Ctrl+B e quindi le virgolette doppie (), si divide la finestra orizzontalmente in due riquadri.
Ciò ha effetto solo sulla finestra corrente; gli altri nella sessione non verranno modificati. Abbiamo usato |_+_| comando nel riquadro in alto per elencare le finestre in questa sessione. Ce ne sono due e la riga di stato ci dice che siamo nella finestra uno. Se passiamo alla finestra zero premendo Ctrl+B, e poi 0 (zero), vediamo che è proprio come l'abbiamo lasciata.
Annuncio pubblicitarioQueste 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 riquadro.
Digitiamo quanto segue:
screen
tmux
Per passare da un riquadro all'altro, premere Ctrl+B, quindi la freccia su, giù, sinistra o destra.
Se premi Ctrl+B e poi il segno di percentuale (|_+_| divide verticalmente il riquadro corrente.
Premi Ctrl+B, quindi Q per creare |_+_| lampeggia brevemente il numero di ciascun riquadro.
Questi numeri vengono utilizzati nei prompt e nei messaggi di |_+_|. Premi Ctrl+B e poi X per chiudere il riquadro corrente. La barra di stato diventa color ambra e ti viene chiesto di confermare che desideri chiudere quel numero di riquadro. Premi Y per rimuovere il riquadro o N per lasciare le cose come sono.
Se si preme Y, il riquadro viene rimosso.
Annuncio pubblicitario
Il |_+_| Il comando ha anche dei riquadri, ma, ancora una volta, sono meno intuitivi da usare. La cosa che ci infastidisce di |_+_| è che se scolleghi una sessione con i riquadri, scompaiono quando riattacchi quella sessione. Questo invecchia molto rapidamente.
Un cheat sheet Ctrl+B
Abbiamo incluso un cheat sheet dei diversi comandi che puoi usare in |_+_| qui di seguito.
Comandi di sessione
Comandi della finestra
Comandi del riquadro
Come si confrontano?
In termini di funzionalità, |_+_| e |_+_| entrambi funzionano allo stesso modo e offrono le stesse caratteristiche principali. È il modo in cui accedi a quelle funzionalità che è notevolmente diverso. |_+_| offre modi più semplici e comodi per accedere alle varie funzioni. Tuttavia, questa non è l'unica differenza.
La possibilità di rinominare sessioni e finestre in |_+_| è pulito e il fatto che mantenga i riquadri quando si ricollega una sessione è un punto di svolta.
|_+_|, d'altra parte, perde completamente i riquadri quando si scollega e si ricollega una sessione. Questo è quasi abbastanza fastidioso da farti evitare di staccare in primo luogo.
C'è molto di più in |_+_|, comprese le sue capacità di scripting incredibilmente flessibili. Lo devi a te stesso per verificarlo.
IMPARENTATO: I migliori laptop Linux per sviluppatori e appassionati
LEGGI SUCCESSIVODave McKay ha usato per la prima volta i computer quando era in voga il nastro di carta perforata, e da allora ha programmato. Dopo oltre 30 anni nel settore IT, ora è un giornalista tecnologico a tempo pieno. Durante la sua carriera ha lavorato come programmatore freelance, manager di un team internazionale di sviluppo software, project manager di servizi IT e, più recentemente, come Data Protection Officer. I suoi scritti sono stati pubblicati da howtogeek.com, cloudavvyit.com, itenterpriser.com e opensource.com. Dave è un evangelista di Linux e un sostenitore dell'open source.
Leggi la biografia completa