If-Koubou

Cum se face multitasking în terminalul Linux: 3 moduri de a utiliza mai multe Shells la o dată

Cum se face multitasking în terminalul Linux: 3 moduri de a utiliza mai multe Shells la o dată (Cum să)

Terminalul Linux are capabilități bogate de multitasking. Puteți comuta între consolele virtuale care rulează deja pe sistemul dvs., utilizați controlul funcției Bash pentru a rula procesele în fundal și pentru a profita de ecranul GNU, un terminal "manager de ferestre".

Nu trebuie să rămânem la o singură comandă la un moment dat. Indiferent dacă doriți să rulați un proces în fundal și să îl revizuiți ocazional sau să executați simultan mai multe sarcini consumatoare de timp, Linux oferă mai multe opțiuni.

Console virtuale

În mod implicit, majoritatea sistemelor Linux au câteva console virtuale care rulează în fundal. Comutați între ele apăsând Ctrl-Alt și lovind o cheie între F1 și F6. Ctrl-Alt-F7 vă va reveni de obicei pe serverul X grafic.

Apăsarea combinației de taste vă va duce la un prompt de conectare. Puteți să vă conectați și să rulați o comandă, apoi să vă întrerupeți - comanda va continua să ruleze în fundal, astfel încât să puteți merge mai multe sesiuni de terminale în același timp.

Textul "tty1" indică aici că acesta este terminalul situat la Ctrl-Alt-F1, tty2 ar fi la F2.

Acestea sunt doar setările cele mai comune - diferite distribuții Linux ar putea avea mai puține console virtuale care rulează și au serverul X localizat într-un alt loc.

Controlul funcției Bash

Coaja Bash oferă propriile caracteristici pentru manipularea mai multor procese. Controlul posturilor vă permite să rulați procesele și să le atașați și să le detașați. Un proces atașat este cunoscut ca un proces în prim-plan, în timp ce un proces detașat este cunoscut ca un proces de fundal.

Pentru a începe un proces în fundal, adăugați & personaj după comanda sa. De exemplu, pentru a deschide editorul de text Nano ca activitate de fundal, tastați următoarea comandă:

nano &

[1] indică faptul că ID-ul de activitate al noului nostru loc de muncă este 1. 3751 este ID-ul procesului.

Fiecare slujbă pe care o începem își are propriul ID de muncă. Pornește locuri de munca comanda pentru a vizualiza lista de lucrări în desfășurare. Semnul + indică lucrarea care a fost asociată ultima dată cu shell-ul, în timp ce semnul - indică lucrarea care a fost asociată ultima dată cu shell-ul.

fg comandă vă permite să aduceți o lucrare de fundal în prim-plan, atașând-o la shell-ul curent. Executarea funcției fg sau a unei alte comenzi fără a specifica o lucrare va utiliza ultima lucrare asociată - cea cu un semn + în lista de activități. De asemenea, puteți specifica un număr de activitate. De exemplu, următoarea comandă va aduce jobul 1 înapoi în prim-plan:

fg% 1

Terminați un proces în mod normal și va dispărea din lista de lucrări care rulează. Dacă doriți să detașați o lucrare de shell-ul curent, utilizați ^ Z - acesta este, Ctrl-Z - Comanda rapidă de la tastatură.

GNU Screen

GNU Screen este un "manager de ferestre pe tot ecranul" care vă permite să utilizați mai multe cochilii într-un singur terminal. Este posibil să nu fie instalat în mod implicit - nu este pe Ubuntu. În Ubuntu sau Debian, utilizați următoarea comandă pentru a instala Ecran:

sudo apt-get ecran de instalare

Odată ce este instalat, executați ecran comanda și veți vedea câteva informații despre Ecran.

Apăsați Space sau Enter și veți vedea un terminal normal.

Este posibil să nu arate special, dar această coajă rulează de fapt în cadrul ecranului GNU. presa Ctrl-o și apoi d pentru a detașa ecranul. Veți reveni la terminalul normal.

Pentru a reintra în ecran, rulați ecran -r comanda. Veți reveni la același terminal ca înainte.

Mai puteți face mult mai multe cu ecranul. De exemplu, creați o nouă "fereastră" (terminal) în ecran apăsând Ctrl-o, atunci c. După ce aveți mai multe ferestre, apăsați Ctrl-o de două ori pentru a comuta între ele. De asemenea, puteți apăsa Ctrl-o, atunci pentru a vedea o listă de ferestre.

Selectați o fereastră din listă și apăsați Enter pentru a comuta la ea.

Am scris anterior despre utilizarea ecranului GNU și am trecut prin utilizarea lui Byobu, care îmbunătățește ecranul GNU.