Tutoriale Video Comenzi linux Cum oprim si pornim serviciile in unix
Cuprins:
- Executați o comandă Linux în fundal
- Mutați un proces în prim plan pe fundal
- Mențineți procesele de fundal rulând după ieșirea unei cochilii
- alternative
- Ecran
- Tmux
- Concluzie
În mod obișnuit, atunci când rulați o comandă în terminal, trebuie să așteptați până când se termină comanda înainte de a putea intra în alta. Aceasta se numește rularea comenzii în prim plan sau în prim-plan. Când un proces se execută în prim plan, acesta vă ocupă shell-ul și puteți interacționa cu acesta folosind dispozitivele de intrare.
Ce se întâmplă dacă comanda durează mult timp pentru a termina și doriți să rulați alte comenzi între timp? Aveți la dispoziție mai multe opțiuni. Cea mai evidentă și simplă opțiune este să porniți o nouă sesiune de shell și să rulați comanda în ea. O altă opțiune este să rulați comanda în fundal.
Un proces de fundal este un proces / comandă care este pornit de la un terminal și se rulează în fundal, fără interacțiune din partea utilizatorului., vom vorbi despre procesele de fundal este Linux. Vă vom arăta cum să porniți o comandă în fundal și cum să mențineți procesul de funcționare după închiderea sesiunii shell.
Executați o comandă Linux în fundal
Pentru a rula o comandă în fundal, adăugați simbolul ampersand (
&
) la sfârșitul comenzii:
command &
ID-ul de job shell (înconjurat de paranteze) și ID-ul procesului vor fi tipărite pe terminal:
25177
Puteți avea mai multe procese care rulează în fundal în același timp.
Procesul de fundal va continua să scrie mesaje pe terminalul de la care ați invocat comanda. Pentru a suprima mesajele
stdout
și
stderr
utilizați următoarea sintaxă:
command > /dev/null 2>&1 &
>/dev/null 2>&1
înseamnă redirecționarea
stdout
către
/dev/null
și
stderr
către
stdout
.
Utilizați utilitatea
jobs
pentru a afișa starea tuturor lucrărilor oprite și de fundal în sesiunea shell actuală:
jobs -l
Rezultatul include numărul de lucru, ID-ul procesului, starea de lucru și comanda care a început lucrarea:
+ 25177 Running ping google.com &
Pentru a aduce un proces de fundal în prim plan, utilizați comanda
fg
:
fg
fg %1
Pentru a încheia procesul de fundal, utilizați comanda
kill
urmată de ID-ul procesului:
Mutați un proces în prim plan pe fundal
Pentru a muta un proces de prim plan în curs de fundal:
- Opriți procesul tastând
Ctrl+Z.Mutați procesul oprit pe fundal tastândbg.
Mențineți procesele de fundal rulând după ieșirea unei cochilii
Dacă conexiunea dvs. scade sau vă deconectați din sesiunea shell, procesele de fundal sunt încheiate. Există mai multe modalități de a menține procesul de funcționare după încheierea sesiunii interactive de shell.
O modalitate este de a elimina lucrarea de la controlul de job al shell-ului folosind shell
disown
ul dezafectat încorporat:
disown
disown %1
Confirmați că lucrarea este eliminată din tabelul de locuri de muncă active utilizând comanda
jobs -l
. Pentru a enumera toate procesele în derulare, inclusiv cele dezafectate, folosiți comanda
ps aux
.
Un alt mod de a menține un proces care rulează după ieșirea din shell este să folosești
nohup
.
Comanda
nohup
execută un alt program specificat drept argumentul său și ignoră toate semnalele
SIGHUP
(hangup).
SIGHUP
este un semnal care este trimis unui proces atunci când terminalul său de control este închis.
Pentru a rula o comandă în fundal folosind comanda
nohup
, introduceți:
nohup command &
Ieșirea comenzii este redirecționată la fișierul
nohup.out
.
nohup: ignoring input and appending output to 'nohup.out'
alternative
Există o serie de programe care vă permit să aveți mai multe sesiuni interactive în același timp.
Ecran
Screen sau GNU Screen este un program multiplexor terminal care vă permite să începeți o sesiune de ecran și să deschideți orice număr de ferestre (terminale virtuale) în cadrul acelei sesiuni. Procesele care rulează pe ecran vor continua să fie rulate atunci când fereastra lor nu este vizibilă, chiar dacă vă deconectați.
Tmux
Tmux este o alternativă modernă la ecranul GNU. Cu Tmux, puteți crea, de asemenea, o sesiune și puteți deschide mai multe ferestre în acea sesiune. Ședințele Tmux sunt persistente, ceea ce înseamnă că programele care rulează în Tmux continuă să ruleze chiar dacă închideți terminalul.
Concluzie
Pentru a rula o comandă în fundal, includeți
&
la sfârșitul comenzii.
Când executați o comandă în fundal, nu trebuie să așteptați până când se termină înainte de a putea executa o alta.
nohup fg bg joburi dezafectate terminalComenzi CTRL sau comenzi rapide sau comenzi rapide de la tastatură pentru Windows
Ce sunt comenzile CTRL? Consultați această listă completă de comenzi rapide de la tastatură CTRL care pot fi utilizate pentru a efectua cu ușurință sarcini utile în Windows PC.
EasyCMD vă permite să executați comenzi CMD de bază dintr-un UI pe Windows
EasyCMD este o derivare simplă a Command Prompt care vă permite executați comenzile CMD și, în același timp, vă oferă un interfață inteligentă.
Executați rapid comenzi de pe computerul dvs. de la distanță prin gmail și sremote
Aflați cum puteți executa rapid comenzile de pe computerul dvs. de la distanță prin Gmail și sRemote.







