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.,)
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.
& 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 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.