Ubij sve zaustavljene poslove Linux

Kill All Stopped Jobs Linux

U Linuxu se posao odnosi na proces koji je ljuska pokrenula i njime upravljala. To može biti jedna naredba, duga i složena naredba ljuske uključujući cijevi i preusmjeravanja, izvršna datoteka ili skripta. Svakim poslom u Linuxu upravlja se dodjeljivanjem sekvencijalne IP adrese posla povezane s određenim procesom.

Ključni koncept za razumijevanje Linux poslova je njihov status. Postoje dva glavna statusa za poslove na Linuxu:



  • Prednji plan
  • Pozadina

Poslovi u prvom planu

Posao u prvom planu odnosi se na naredbu ili program izveden u ljusci i zauzima terminalsku sesiju dok se ne dovrši. Primjer bi bio pokretanje upravitelja datoteka ili preglednika u terminalu



Na primjer, sljedeći snimak zaslona prikazuje prozor terminala s poslom u prvom planu.



Na gornjoj slici prompt ljuske nije dostupan sve dok se prozor Firefox ne zatvori.

Pozadinski poslovi

Suprotnost prvom planu su pozadinski poslovi. Za pokretanje posla u ljusci kao pozadinskog posla koristimo simbol ampersand (&). Korištenje ovoga govori ljusci da stavi sve naredbe koje dolaze prije ampersanda u pozadinu i odmah prikaže prompt ljuske.



Primjer u nastavku pokazuje kako Firefoxov posao (u gornjem primjeru) staviti u pozadinu.

Kao što vidite, ljuska je sada dostupna unatoč tome što Firefox još uvijek radi.

Primijetit ćete numeričke vrijednosti prikazane za pozadinske poslove. Prva označena uglatim zagradama ([]) prikazuje ID posla, dok druga vrijednost označava PID procesa pridruženog poslu.

Kako upravljati poslovima u pozadini

Naredba jobs upravlja kontrolom posla. To vam omogućuje pregled poslova u pozadini.

sudo poslovi

Izvođenje gore navedene naredbe prikazuje pozadinske poslove kao što je prikazano u nastavku:

Počevši od lijeve strane, imamo Job ID.

Odmah iza zagrada slijedi znak plus (+) ili minus (-). Znak plus označava da je ovo trenutni posao, dok minus broj pokazuje sljedeći posao.

Sljedeća zagrada prikazuje stanje posla. To se može pokrenuti, zaustaviti, prekinuti, učiniti ili izaći sa statusnim kodom.

Konačno, zadnji dio prikazuje stvarni naziv posla.

Prikažite poslove s PID -om

Za prikaz pozadinskih poslova s ​​odgovarajućim PID vrijednostima koristimo zastavicu -l kao:

poslovi -

To će prikazati pozadinske poslove s njihovim PID vrijednostima, kao što je prikazano na donjoj slici.

Pozadinski poslovi s izlazom

Pretpostavimo da imamo posao koji želimo izvoditi u pozadini koji ispisuje izlaz na zaslon. Na primjer, u gornjem primjeru stavio sam naredbu apt, koja ima puno izlaza u pozadini, a da ne pokvari terminal.

Da biste to učinili, možete preusmjeriti izlaz u /dev /null kao:

sudo apt-get ažuriranje > /dev/null&

Kako postaviti pozadinski posao u prvi plan

Pozadinske poslove možemo staviti u prvi plan pomoću naredbe fg. Na primjer, da bismo posao Firefoxa s Job ID -om 1 doveli u pozadinu, možemo učiniti:

fg %1

To će posao staviti u prvi plan kao:

[zaštićena e -pošta]: ~ $fg %1

firefox

Opcije naredbe Poslovi

Naredba jobs nema puno opcija.

Već smo razgovarali o -l za prikaz poslova s ​​ID -ovima procesa.

Druge opcije koje možete proslijediti naredbi posla uključuju:

  • -n - Ovdje se prikazuju poslovi koji su promijenili status od zadnje obavijesti. Na primjer, posao koji se iz stanja u izvođenju promijenio u stanje zaustavljanja.
  • -str - Navodi samo PID -ove poslova.
  • -r - samo radna mjesta
  • -s - Prikazuje samo zaustavljena radna mjesta.

Kako prekinuti ili ubiti posao

Poslove možemo prekinuti pomoću naredbe kill nakon koje slijedi ili ID posla, podniz ili ID procesa.

Ubijte pomoću ID -a posla

Da bismo ubili posao s ID -om posla, koristimo % nakon kojeg slijedi id vrijednost kao:

ubiti %%

To će ubiti trenutni posao; ovo je slično %+.

Ubij posao podnizom

Ubijanje posla s podnizom, predponu podniza sa %? iza koje slijedi vrijednost podniz:

ubiti %? gnome-kalkulator

BILJEŠKA : Linux istodobno izvršava poslove. To znači da skače naprijed -natrag između dostupnih poslova dok se ne završe. Stoga će prekidanje terminalske sesije s izvršenim poslovima prekinuti sve vaše poslove.

Ne morate brinuti o tome ako koristite terminalni multiplekser poput tmuxa ili zaslona jer ih možete ponovno spojiti.

Kako ubiti zaustavljena radna mjesta

Da bismo pobili sve zaustavljene poslove, moramo povezati dvije naredbe zajedno. Prvi će dobiti PID -ove svih zaustavljenih poslova, a sljedeći će ubiti sve predviđene poslove.

Za pregled zaustavljenih poslova koristimo naredbu

poslovi -s

Ova naredba prikazuje sve zaustavljene poslove.

Imajući ovo, možemo dobiti PID -ove zaustavljenih poslova i prenijeti ih do naredbe kill kao:

sudo ubiti -9 ``poslovi -str-s``

To će ubiti sve zaustavljene poslove.

Zaključak

Ovaj vodič je prešao koncepte kontrole poslova u Linuxu i kako doći do informacija o poslovima. Dobro je napomenuti da kontrola posla možda neće biti dostupna ovisno o vašoj ljusci koju odaberete.

Hvala vam na čitanju & Happy Shells.