Hvordan få en terminalprosess til å kjøre i bakgrunnen

Bakgrunn terminal prosess

Sannsynlig situasjon: du liker å ha rene installasjoner. Du gjenoppretter dataene manuelt, og du installerer alltid den samme programvaren etter installasjonen av operativsystemet. Du har en lang kommando for å installere alle APT-pakkene etter hverandre. Du skriver inn kommandoen. Du venter på at den skal bli ferdig. Teamet ditt er ikke det mektigste i verden, og det lider. Er det en løsning på dette? Fakta er at vi kan kjøre en terminalprosess i bakgrunnen og i denne artikkelen vil vi vise deg hvordan.

Ovennevnte situasjon var noe som skjedde med meg når jeg brukte Ubuntu. Jeg installerte mye programvare og avinstallerte en annen for å la den være slik jeg likte den, men det er ikke nødvendig for meg i Kubuntu fordi den har nesten alt jeg trenger ut av esken. Uansett hva det er, er det det en måte å unngå å ha et terminalvindu åpent som kan forstyrre, eller vi kan slå av og stoppe prosessen ved et uhell. Dette er noe som ikke kan skje med oss ​​hvis vi kjører det i bakgrunnen.

bg tar en prosess fra terminalen til bakgrunnen

En denne artikkelen Vi forklarer hvorfor vi ikke kan kopiere og lime inn med snarveiene for livet i terminalen. Disse snarveiene brukes til å utføre andre handlinger, for eksempel Ctrl + C for å stoppe en prosess. I mange andre programmer, Ctrl + Z Den brukes til å angre den siste endringen, men den fungerer ikke i terminalen heller. Det den gjør i terminalen er å sette en prosess på pause og legge den til "jobber". Det raskeste eksemplet der vi kan se hvordan det fungerer, er å oppdatere APT-pakkene (sudo apt update) og trykke Ctrl + Z. Vi vil se at terminalen sier "[1] + Stoppet", noe som betyr at vi har stoppet prosess nummer 1 og lagt den til i listen over jobber for den terminalen; hvis vi går ut, går jobbene med ham. For å starte dem på nytt vil vi bruke fg å holde den i forgrunnen eller bg slik at den forblir i bakgrunnen. I begge tilfeller vil vi fortsette å se prosessen i terminalen, og den vil stoppe hvis vi lukker vinduet.

Når en terminalprosess, eller flere, er satt på pause, kan vi se hva vi har ventet på ved hjelp av comando jobber som vi har nevnt ovenfor. Hvis det er mer enn en prosess stoppet, vil vi legge til nummeret i fg o bg for å gjenoppta en bestemt. Valget bg (bakgrunn = bakgrunn) tillater oss ikke å stoppe prosessen igjen. Hvis vi vil at prosessen skal kjøre direkte i bakgrunnen, vil vi legge til "&" uten anførselstegn.

jobber

forkaste lar arbeidet fortsette når du går ut av terminalen

Hvis vi vil at en terminalprosess skal fortsette i bakgrunnen etter at vinduet er lukket, bruker vi kommandoen forkaste. For å gjøre dette vil trinnene å følge være disse:

  1. Vi starter en prosess.
  2. Vi stopper det med Ctrl + Z.
  3. Vi skriver jobber for å se prosessnummeret.
  4. Vi skriver følgende kommando, der tallet bak prosentandelen sammenfaller med prosessen vi vil kjøre i bakgrunnen etter at vi har gått ut av terminalen:
disown -h %1
  1. Vi starter prosessen på nytt med følgende kommando (bruker 1 hvis det er prosessen vi vil starte på nytt):
bg 1
  1. Hvis vi ønsker det, stenger vi terminalen.

Den beste måten å kontrollere at dette fungerer er å pakke ut en stor fil. I forrige skjermbilde kan du se hvordan jeg har pakket ut en 7z-fil fra terminalen. Avhengig av størrelsen på filen, kan dette ta flere minutter. Hvis du gjør det vi har forklart ovenfor, kan du gå til banen der vi har bedt deg om å pakke ut den (som standard / HJEM), høyreklikke, få tilgang til egenskapene og sjekke at størrelsen øker litt etter litt. Hvis ikke, lukker vi eiendomsvinduet og får tilgang til det igjen. Problemet? Det er ingen måte å vite nøyaktig når en prosess er ferdig. Ved utpakking av en fil antas den å være komplett når den ikke lenger øker i størrelse. I alle fall kan vi bekrefte at den fortsetter å fungere etter at terminalen er stengt.

Jeg vil ikke avslutte denne artikkelen uten å si noe: selv om Alt som er forklart her er trygt, jeg anbefaler at du først sjekker at alt fungerer riktig i operativsystemet ditt med noe som ikke er veldig viktig. For eksempel å laste ned en 7z-fil og pakke den ut. Hvis du ser at alt fungerer som vi har forklart i dette innlegget, fortsett med alt annet. Vil det være nyttig å kunne kjøre terminalprosesser i bakgrunnen?


Legg igjen kommentaren

Din e-postadresse vil ikke bli publisert. Obligatoriske felt er merket med *

*

*

  1. Ansvarlig for dataene: Miguel Ángel Gatón
  2. Formålet med dataene: Kontroller SPAM, kommentaradministrasjon.
  3. Legitimering: Ditt samtykke
  4. Kommunikasjon av dataene: Dataene vil ikke bli kommunisert til tredjeparter bortsett fra ved juridisk forpliktelse.
  5. Datalagring: Database vert for Occentus Networks (EU)
  6. Rettigheter: Når som helst kan du begrense, gjenopprette og slette informasjonen din.