Comenzile Linux sunt o modalitate excelentă de a interacționa cu sistemul folosind terminalul. Cu toate acestea, uneori poate dura ceva timp pentru a termina sarcina la îndemână. Acest lucru îi obligă pe utilizatori să aștepte un timp considerabil sau să creeze cu totul un nou shell.
Din fericire, puteți rula comenzi Linux în fundal urmând câteva metode simple. Restul acestui articol ilustrează unele dintre aceste metode.
1. Adaugă un Ampersand după comanda ta
Cel mai simplu mod de a rula o comandă de fundal Linux este să adăugați un Ampersand (&) simbol după comandă. De exemplu, dacă porniți editorul de text gedit de la terminalul dvs., nu puteți utiliza shell-ul până când nu îl închideți. Cu toate acestea, atunci când adăugați un plus & la comanda dvs., veți putea utiliza shell-ul imediat.
gedit &
2. Utilizați bg pentru a trimite comenzile de rulare pe fundal
Uneori executați o comandă doar pentru a afla că durează mult mai mult până la finalizare. Puteți trimite cu ușurință aceste comenzi în fundal apăsând pe
Ctrl + Z tastele și apoi folosind bg comanda. Ctrl + Z oprește procesul de rulare și bg o duce la fundal.Puteți vizualiza o listă a tuturor activităților de fundal tastând locuri de munca în terminal. Folosește fg comanda pentru a reveni la sarcina de rulare.
3. Trimiteți comenzi în fundal cu nohup
nu comanda în Linux permite administratorilor să ruleze comenzi de terminal care sunt imune la HUP sau Închide semnale. Puteți rula comenzi Linux în fundal folosind nohup.
Exemplul de mai jos rulează un Scanare port Nmap in fundal.
nohup sudo nmap -sS --top-ports = 15 192.168.1.1/24
Un avantaj cheie al nohup este că comenzile dvs. vor rula chiar dacă ieșiți din shell. Mai mult, generează fișiere jurnal ale execuției. Cauta nohup.out în directorul curent sau în interiorul $ HOME.
4. Rulați comenzi de fundal utilizând redirecționări de sistem
De asemenea, puteți rula comenzi de fundal în Linux folosind redirecționări de sistem. De exemplu, dacă rulați cele de mai jos ping comandă, shell-ul dvs. îl va rula în fundal și va readuce imediat promptul terminalului.
ping -c5 8.8.8.8> output.log 2> & 1 &
Aici ieșirea comenzii ping este redirecționată către output.log fişier. O puteți înlocui cu /dev/null dacă doriți să aruncați rezultatul. 2>&1 îi spune lui bash să redirecționeze orice erori către același fișier. Finala & semnale bash pentru a rula această comandă în fundal.
5. Setați comenzile Linux la fundal folosind disown
renegare comanda în Linux simplifică rularea comenzilor în fundal. Mai întâi, trebuie să trimiteți sarcina în fundal folosind & operator. Apoi, tastați renegare pentru a-l detașa de coajă.
gedit &
renegare
Un avantaj major al respingerii este că, la fel ca nohup, sistemul nu vă va ucide sarcina atunci când închideți shell-ul sau vă deconectați.
6. Rulați comenzi Linux în fundal folosind Tmux
Tmux este un multiplexor puternic care ne permite să rulăm mai multe sesiuni de terminal într-o singură fereastră. Învățarea tmux este o alegere excelentă pentru persoanele care nu le sunt familiare. Tmux face rularea comenzilor de fundal în Linux fără efort.
tmux new -d 'ping -c 10 8.8.8.8> output.log'
Când rulați cele de mai sus tmux comanda, va executa ping comandați într-un shell separat și păstrați-l în fundal. Puteți executa orice comandă Linux în fundal folosind această metodă.
Legate de: Cum se instalează și se configurează Tmux pentru Linux
Lăsați comenzile Linux în fundal
Având capacitatea de a rula comenzi în fundal, gestionarea sistemului este mai productivă pentru administratori. Vă puteți fundala sarcinile în mai multe moduri. Caracteristici Bash precum & și Ctrl + Z sunt convenabile, dar sistemul va ucide lucrarea de fundal atunci când shell-ul se închide. Pe de altă parte, instrumente precum nu și renegare mențineți comanda rulată chiar și atunci când vă deconectați sau terminați shell-ul.
Dacă lăsați programele în fundal pentru o lungă perioadă de timp, acestea pot deveni procese zombie dacă nu sunt codificate corect. Aceste procese pot încetini semnificativ sistemul. Deci, asigurați-vă că identificați și ucideți procesele zombie din când în când.
Procesele zombie sunt rămășițe de software închis. Iată cum procesele zombie pot încetini un sistem Linux și cum să le omoare.
Citiți în continuare
- Linux
- Linux
- Comenzi Linux
Rubaiat este un absolvent CS cu o pasiune puternică pentru open-source. Pe lângă faptul că este un veteran Unix, el este, de asemenea, interesat de securitatea rețelelor, criptografie și programare funcțională. Este un colecționar avid de cărți second-hand și are o admirație nesfârșită pentru rockul clasic.
Aboneaza-te la newsletter-ul nostru
Alăturați-vă newsletter-ului pentru sfaturi tehnice, recenzii, cărți electronice gratuite și oferte exclusive!
Încă un pas…!
Vă rugăm să confirmați adresa de e-mail în e-mailul pe care tocmai vi l-am trimis.