Slik Kjører Bash-Kommandoer i Bakgrunnen i Linux

Det er ingenting mer irriterende enn å kjøre en kommando i terminal og la den kjøre i minutter, noen ganger timer, og ikke være i stand til å bruke terminal igjen. Sikker, kan du bruke faner, men det er en clunky-løsning, og det er ikke alltid optimal, fordi det kan hende du ønsker å se oppdateringer som du arbeider. Her viser vi deg noen forskjellige måter å kjøre bash-kommandoer i bakgrunnen i Linux.,

Slutten av en Kommando med &

Hvis du ønsker å presse en kommando i bakgrunnen, ved hjelp av & på slutten, er en enkel måte å gjøre det på. Denne måten, kan du sende en kommando i bakgrunnen, og du fortsette å bruke din pc som kjører det. Det kommer med en fangst, skjønt. Ved hjelp av & ikke koble fra kommandoen bort fra deg, det bare skyver det inn i bakgrunnen., Dette betyr at mens du prøver å bruke terminal, noe kommandoen ønsker å presse til STDOUT eller STDERR vil fortsatt skrives ut, noe som kan være forstyrrende.

KOMMANDOEN &

Når terminalen økt lukkes, kommandoen ender., Du kan også drepe kommando ved utstedelse jobs kommando for å finne antall kommandoen som kjører, og drepe det med kill – kommandoen. At syntaksen er som følger:

drepe %1

ved Hjelp av & er bra hvis du trenger å presse noe av for en bit, men ikke forvent at det skal fortsette for evig.,

& Etter en Kommando, Så Disown dem på

å Kjøre en kommando med bare & skyver det ut til tilbake og holder den gående så lenge som terminal-vinduet er åpent. Hvis du derimot er ute etter å holde denne kommandoen kjører i konstant, selv med din terminal økten avsluttes, kan du bruke disown – kommandoen.

for Å bruke denne metoden, kan du starte ved å legge til en &.,

KOMMANDOEN &

Som nevnt ovenfor, ved hjelp av & presser denne kommandoen i bakgrunnen, men ikke ta det fra brukeren. Du kan kontrollere dette ved å skrive jobs inn i terminalen. Det vil vise kommandoen kjører i bakgrunnen, som vi har sett før.

Bare skriv disown i skallet, og det vil gjøre nettopp det. (Og du kan igjen bekrefte dette med jobs – kommandoen.,)

Du kan bare ta ut disown – kommandoen i det

Nå kan du lukke din terminal og fortsette om dagen. Det vil fortsatt holde varme ting til STDOUT eller STDERR, men når du lukker og åpner terminal, vil du ikke se noe der., Kan du finne den kommandoen igjen med top eller ps kommandoer og drepe det med kill – kommandoen.

Den forrådte jobben er det andre, med PID 16238.,

& Etter en Kommando med /dev/null

å Legge til & etter en kommando vil presse en kommando i bakgrunnen, men som et resultat, er bakgrunnen kommandoen vil fortsette å skrive meldinger til den terminal som du bruker det. Hvis du er ute etter å hindre dette, bør du vurdere å omdirigere kommandoen /dev/null.,

KOMMANDOEN &>/dev/null &

Dette betyr ikke hindre kommando fra lukke når terminalen stenges. Imidlertid, som nevnt ovenfor, er det mulig å bruke disown for å disown kjører kommandoen bort fra brukeren. Du kan også drepe den i en av metodene nevnt ovenfor hvis du ikke vil ha den til å kjøre lenger.,

Nohup, med & og /dev/null

i Motsetning til den tidligere kommandoer, bruk av nohup lar deg kjøre en kommando i bakgrunnen og holder den i gang. Hvordan? nohup forbigår HUP-signal (signal henge opp), noe som gjør det mulig å kjøre kommandoer i bakgrunnen selv når terminalen er slått av. Kombiner denne kommandoen med omdirigering til «/dev/null» (for å hindre nohup fra å gjøre en nohup.ut-fil), og alt går i bakgrunnen med en kommando.,

 - KOMMANDOEN nohup &>/dev/null &

de Fleste terminal programmer på Linux i dag har funksjonene som er bygd inn for å tillate dem å kjøre i bakgrunnen med liten innsats. Sammen med det, moderne init-systemer (som systemd) kan tillate brukere å starte programmer som tjenester ved oppstart, eller når.,

Likevel, er det noen programmer på Linux manglende evne til å kjøre som en daemon eller integrere med moderne init-systemer. Dette er en reell ulempe, men er forståelig, da ikke alle utviklere har kompetanse eller tid til å legge til nye funksjoner.

Heldigvis, kommandoer som nohup eller disown er fortsatt en realitet og kan lukke gapet i å flytte programmer som dette til bakgrunnen. De er ikke perfekt eller fancy, men de får jobben gjort når det er nødvendig.,

Hvis du likte denne Linux artikkelen, sørg for å sjekke ut noen av våre andre Linux-innhold, som for eksempel hvordan koble til din Google-konto for å GNOME Shell, 5 av de beste Linux-Distroer for Windows-Brukere i 2021, og 15 LS kommandoene du trenger å vite.

i Slekt:

John Perkins

John er en ung teknisk profesjonell med en lidenskap for å utdanne brukerne på de beste måtene å bruke sin teknologi. Han har tekniske sertifiseringer som dekker emner som varierer fra maskin til cybersecurity til Linux systemadministrasjon.,

Få våre historier levert til din innboks.

Share

Legg igjen en kommentar

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