GNU/Linux >> Linux Esercitazione >  >> Linux

5 modi per dividere il tuo terminale Linux

C'è qualcosa di meglio di un terminale Linux caldo e tremolante?

Certo che c'è:due terminali Linux caldamente tremolanti. In effetti, più sono, meglio è.

Molto tempo fa, i terminali erano dispositivi fisici, ma ovviamente oggi vengono semplicemente emulati come un'applicazione sul tuo computer. Se preferisci il terminale come interfaccia, probabilmente sai che un terminale è raramente sufficiente. Inevitabilmente, aprirai un nuovo terminale o una nuova scheda in modo da poterci lavorare mentre il tuo primo è impegnato a compilare, convertire o elaborare in altro modo i dati.

Se sei un amministratore di sistema, allora sai che avrai bisogno di almeno quattro finestre aperte mentre lavori su più sistemi contemporaneamente.

Più risorse Linux

  • Comandi Linux cheat sheet
  • Cheat sheet sui comandi avanzati di Linux
  • Corso online gratuito:Panoramica tecnica RHEL
  • Cheat sheet della rete Linux
  • Cheat sheet di SELinux
  • Cheat sheet dei comandi comuni di Linux
  • Cosa sono i container Linux?
  • I nostri ultimi articoli su Linux

Le applicazioni terminali con le schede esistono su Linux da molto tempo e, fortunatamente, questa tendenza sembra aver preso piede in modo tale da essere una caratteristica prevista di un terminale moderno. Eppure, a volte è fastidioso o scomodo scorrere avanti e indietro tra le schede.

L'unica risposta è uno schermo diviso in modo che due o più terminali possano esistere contemporaneamente all'interno di una sola finestra dell'applicazione. Ci sono molti strumenti nel tuo kit Linux per aiutarti a tagliare e tagliare a cubetti le tue console.

Shell, terminali e console

Prima di affettare e tagliare gli schermi, dovresti conoscere la differenza tra un terminale, una shell e una "console". Per avere il quadro completo, leggi il mio articolo sull'argomento sul blog Enable Sysadmin.

La versione breve:

  • Una shell è una schermata di input e output con un prompt. Tecnicamente esiste una shell in esecuzione da qualche parte sotto il desktop POSIX, anche quando non è visibile (perché è una shell che ha avviato la sessione utente).
  • Un terminale è un'applicazione in esecuzione all'interno di un server grafico (come X11 o Wayland) con una shell caricata al suo interno. Un terminale è in esecuzione solo quando è stata avviata una finestra di terminale. È più o meno un "portale" nella tua shell.
  • "Console" o "console virtuale" è un termine solitamente utilizzato per indicare una shell in esecuzione al di fuori del desktop. Puoi accedere a una console virtuale premendo Alt-Ctrl-F2 (di solito sono disponibili altri da F3 fino a F7 , con F1 o F7 che rappresenta il tuo desktop, a seconda della tua distribuzione).

Alcune applicazioni ti consentono di dividere la tua shell o console, mentre altre ti consentono di dividere il tuo terminale.

tmux

Probabilmente il più flessibile e capace di divisori dello schermo, tmux è un multiplexer di terminali incentrato sulla tastiera, il che significa che puoi "sovrapporre" una console sopra un'altra e quindi passare da una all'altra. Puoi anche dividere una vista console a metà (o terzi o quarti e così via) in modo da poter vedere altre console accanto ad essa.

Tutti i controlli sono incentrati sulla tastiera, il che significa che non devi mai togliere la mano dai tasti alla ricerca di un mouse, ma anche che devi imparare alcune nuove combinazioni di tastiera.

Se stai usando tmux principalmente per dividere lo schermo, gli unici comandi di cui hai veramente bisogno sono questi:

  • Ctrl-B % per una divisione verticale (una conchiglia a sinistra, una conchiglia a destra)
  • Ctrl-B" per una divisione orizzontale (una conchiglia in alto, una conchiglia in basso)
  • Ctrl-B O per rendere attiva l'altra shell
  • Ctrl-B ? per aiuto
  • Ctrl-B d staccare da Tmux, lasciandolo in esecuzione in background (usare tmux attach rientrare)

Ci sono molti vantaggi in tmux, inclusa la possibilità di avviare una sessione di tmux su un computer e quindi partecipare a quella stessa sessione da un altro computer in remoto. Essenzialmente demonizza la tua shell.

È con tmux in esecuzione su un Pi, ad esempio, che posso rimanere connesso a IRC in modo permanente:avvio tmux sul Pi e quindi accedo da qualsiasi computer su cui mi trovo. Quando esco, tmux continua a funzionare, aspettando pazientemente che mi ricolleghi alla sessione da un altro computer.

Schermo GNU

Simile a tmux, GNU Screen è un multiplexer di shell. Puoi staccare e ricollegare da una sessione di corsa e puoi dividere lo schermo sia orizzontalmente che verticalmente.

Lo schermo è un po' più goffo di tmux. La sua combinazione di tasti predefinita è Ctrl-A , che è anche la scorciatoia da tastiera di Bash per andare all'inizio di una riga. Ciò significa che se hai Screen in esecuzione, devi premere Ctrl-A due volte invece di una sola per andare all'inizio della riga. Personalmente, ridefinisco il tasto di attivazione in Ctrl-J con questa riga in $HOME/.screenrc :

escape ^jJ

La funzione di divisione dello schermo funziona bene, ma tralascia alcuni convenevoli che mancano a tmux. Ad esempio, quando dividi la shell, una nuova shell non viene avviata nell'altro pannello. Devi passare all'altro spazio con Ctrl-A Tab (o Ctrl-J se ridefinisci la tua scorciatoia da tastiera come faccio io) e crea una nuova shell manualmente con Ctrl-A C .

A differenza di tmux, una divisione non scompare quando si esce da una shell, che è una caratteristica del design che è piuttosto interessante in alcuni casi, ma a volte può anche essere ingombrante perché ti costringe a gestire le tue divisioni manualmente.

Tuttavia, Screen è un'applicazione affidabile e flessibile che puoi eseguire se trovi che tmux non è disponibile per te.

Ecco i comandi di divisione di base, utilizzando le scorciatoie da tastiera predefinite:

  • Ctrl-A | per una divisione verticale (una conchiglia a sinistra, una conchiglia a destra)
  • Ctrl-A S per una divisione orizzontale (una conchiglia in alto, una conchiglia in basso)
  • Ctrl-A Tab per rendere attiva l'altra shell
  • Ctrl-A? per aiuto
  • Ctrl-A d staccati da Screen, lasciandolo in esecuzione in background (usa screen -r rientrare)

Console

Konsole è il terminale in bundle con il desktop KDE Plasma. Come lo stesso KDE, Konsole è famoso per essere altamente personalizzabile e potente.

Tra le sue molte caratteristiche c'è la possibilità di dividere la sua finestra, simile sia a tmux che a GNU Screen. Poiché Konsole è un terminale grafico, puoi controllare la sua funzione di schermo diviso con il mouse anziché con la tastiera.

La suddivisione si trova nella Visualizza menu di Konsole. Puoi dividere la tua finestra orizzontalmente o verticalmente. Per cambiare quale pannello è attivo, fai clic su di esso. Ogni pannello è un terminale unico, quindi può avere il proprio tema e le proprie schede.

A differenza di tmux e GNU Screen, non puoi staccare e ricollegare da Konsole. Come la maggior parte delle applicazioni grafiche, usi Konsole mentre ci sei fisicamente di fronte e perdi l'accesso quando non ci sei (a meno che non utilizzi un software desktop remoto).

Emac

Emacs non è esattamente un multiplexer di terminali, ma la sua interfaccia supporta la divisione e il ridimensionamento e ha un terminale integrato.

Se sei comunque in Emacs quotidianamente, la possibilità di dividere la tua finestra tra applicazioni essenzialmente diverse significa che non devi mai lasciare la familiarità e il comfort del tuo editor di testo preferito. Inoltre, perché Emacs eshell modulo è implementato in eLISP, puoi interagire con esso usando gli stessi comandi che usi in Emacs stesso, rendendo banale copiare e strappare lunghi percorsi di file o output dei comandi.

Se stai usando Emacs in una finestra grafica, puoi eseguire alcune azioni con il tuo mouse. È più veloce usare le scorciatoie da tastiera e alcune sono più o meno necessarie. Ad esempio, puoi cambiare quale pannello è attivo facendo clic su di esso e puoi ridimensionare le proporzioni dello schermo diviso con il mouse.

Queste sono le scorciatoie da tastiera importanti:

  • Ctrl-X 3 per una divisione verticale (una conchiglia a sinistra, una conchiglia a destra)
  • Ctrl-X 2 per una divisione orizzontale (una conchiglia in alto, una conchiglia in basso)
  • Ctrl-X O per rendere attiva l'altra shell (puoi farlo anche con il mouse)
  • Ctrl-X 0 (è uno zero) chiudi il pannello corrente

Simile a tmux e GNU Screen, puoi scollegarti e ricollegarti da Emacs fintanto che esegui emacs-client .

Gestione finestre

Se pensi che un editor di testo in grado di dividere lo schermo e caricare un terminale sia fantastico, immagina che il tuo desktop abbia lo stesso scopo. Esistono desktop Linux, come Ratpoison, Herbsluftwm, i3, Awesome e persino il desktop KDE Plasma con impostazioni specifiche abilitate, che presentano ogni finestra dell'applicazione come un riquadro fisso in una griglia del desktop.

Invece di finestre che fluttuano "sopra" il desktop, rimangono in una posizione prevedibile in modo da poter passare dall'una all'altra. Puoi aprire un numero qualsiasi di terminali all'interno della tua griglia, emulando un multiplexer di terminali. In effetti, potresti persino caricare un multiplexer di terminale nel tuo multiplexer desktop.

E non c'è niente che ti impedisca di caricare Emacs con buffer divisi al suo interno. Nessuno sa cosa succede se vai oltre e la maggior parte degli utenti Linux concorda sul fatto che è meglio non scoprirlo.

A differenza di tmux e GNU Screen, non puoi staccare e ricollegare dal desktop a meno che non conteggi utilizzando il software desktop remoto.

Altre opzioni

Che ci crediate o no, queste non sono le uniche opzioni che hai per dividere lo schermo su Linux. Esistono altri emulatori di terminale, come Tilix e Terminator prima, che possono essere suddivisi in sezioni e applicazioni con componenti terminali incorporati e molto altro. Raccontaci il tuo modo preferito di dividere il tuo spazio di lavoro nei commenti.


Linux
  1. Monitora il tuo sistema Linux nel tuo terminale con procps-ng

  2. Come impostare la tua variabile $PATH in Linux

  3. Qual è il tuo trucco da terminale Linux preferito?

  4. Come rendere natalizio il tuo terminale e shell Linux

  5. 5 modi utili per fare aritmetica nel terminale Linux

Rilassati accanto al fuoco sul tuo terminale Linux

Fatti strada attraverso il tuo terminale Linux

Gioca a Tetris sul tuo terminale Linux

Guida una locomotiva attraverso il tuo terminale Linux

Come registrare la sessione del terminale su Linux

8 modi per ottenere aiuto sulla shell di Linux