tyypillisesti kun komentoa ajetaan päätelaitteessa, on odotettava komennon päättymistä ennen kuin voi syöttää toisen komennon. Tätä kutsutaan komennon ajamiseksi etu-tai etualaprosessissa. Kun prosessi kulkee etualalla, se vie kuoresi, ja voit vuorovaikutuksessa sen kanssa käyttämällä syöttölaitteita.

Mitä jos komento kestää pitkään loppuun, ja haluat suorittaa muita komentoja sillä välin? Sinulla on useita vaihtoehtoja käytettävissäsi., Ilmeisin ja suoraviivaisin vaihtoehto on aloittaa uusi shell-istunto ja suorittaa komento siinä. Toinen vaihtoehto on suorittaa komento taustalla.

taustaprosessi on prosessi / komento, joka käynnistyy päätteestä ja kulkee taustalla ilman käyttäjän vuorovaikutusta.

tässä artikkelissa puhutaan taustaprosesseista on Linux. Näytämme, miten komento aloitetaan taustalla ja miten prosessi pidetään käynnissä shell-istunnon päätyttyä.,

Suorita Linux Komento Taustalla #

suorita komento taustalla, lisää et-merkki et-merkki (&) lopussa komento:

command &

kuori job ID (ympäröi suluissa) ja prosessi ID on painettu terminaalin:

 25177

Sinulla voi olla useita prosesseja käynnissä taustalla samaan aikaan.

taustaprosessi jatkaa viestien kirjoittamista päätelaitteeseen, josta vetosit komentoon., To suppress the stdout and stderr messages use the following syntax:

command > /dev/null 2>&1 & 

>/dev/null 2>&1 means redirect stdout to /dev/null and stderr to stdout .,/div>

tuo taustalla prosessi edustalle, käytä fg komento:

fg

Jos sinulla on useita taustakuvan työpaikkoja, ovat % ja työn TUNNUS komennon jälkeen:

fg %1

lopettaa taustalla prosessi, käyttää kill komento jonka jälkeen prosessi ID:

kill -9 25177

Siirrä Etualalla Prosessin Taustalla #

jos Haluat siirtää käynnissä etualalla prosessi taustalla:

  1. Lopeta prosessi kirjoittamalla Ctrl+Z.,
  2. siirrä pysäytetty prosessi taustalle kirjoittamallabg.

Pitää Tausta Prosesseja Käynnissä Jälkeen Kuori Poistuu #

Jos yhteys putoaa tai kirjaudut ulos shell-istunto, tausta prosessit lopetetaan. On olemassa useita tapoja pitää prosessi käynnissä sen jälkeen, kun interaktiivinen shell istunto päättyy.,

Yksi tapa on poistaa työn kuori on työn hallintaa käyttäen disown kuori builtin:

disown

Jos sinulla on useampi kuin yksi tausta työpaikkoja, ovat % ja työn TUNNUS komennon jälkeen:

disown %1

Vahvista, että työ on poistettu taulukosta aktiivisen työpaikkoja käyttäen jobs -l komento. Luettelo kaikista käynnissä olevat prosessit, kuten kieltäneet käyttää ps aux komento.,

toinen tapa pitää prosessi käynnissä Shellin poistumisen jälkeen on käyttää nohup.

nohup komento suorittaa toisen ohjelman määritelty sen väitettä, ja ohittaa kaikki SIGHUP (hangup) signaaleja. SIGHUP on signaali, joka lähetetään prosessi, kun sen määräysvaltaa terminaali on suljettu.

suorita komento taustalla käyttäen nohup komento, kirjoita:

nohup command &

– komennon tuloste ohjataan nohup.out tiedosto.,

nohup: ignoring input and appending output to 'nohup.out'

Jos kirjaudut ulos tai suljet terminaalin, prosessia ei lopeteta.

Vaihtoehtoja #

On olemassa useita ohjelmia, joiden avulla voit olla useita interaktiivisia istuntoja samanaikaisesti.

Näyttö #

Näytön tai GNU Screen on terminal multiplexer ohjelma, jonka avulla voit aloittaa näytön istunnon ja avata minkä tahansa määrän windows (virtual terminaalit) sisällä, että istunto. Ruudussa toimivat prosessit jatkuvat, kun niiden ikkuna ei näy, vaikka yhteys katkeaisi.,

Tmux #

Tmux on moderni vaihtoehto GNU screen. Tmux: n avulla voit myös luoda istunnon ja avata useita ikkunoita kyseisen istunnon sisällä. Tmux istunnot ovat pysyviä, mikä tarkoittaa, että ohjelmat käynnissä Tmux jatkuu, vaikka suljet terminaalin.

Johtopäätös #

suorita komento taustalla, ovat & lopussa komento.

Kun suoritat komennon taustalla, sinun ei tarvitse odottaa, kunnes se päättyy, ennen kuin voit suorittaa toisen.

Articles

Vastaa

Sähköpostiosoitettasi ei julkaista. Pakolliset kentät on merkitty *