Linux nohup Command (Svenska)

kommandot nohup utför ett annat program som anges som dess argument och ignorerar alla SIGHUP (hangup) signaler. SIGHUP är en signal som skickas till en process när dess kontrollerande terminal är stängd.

vanligtvis, när du kör ett program över SSH, om din anslutning sjunker eller du loggar ut, avslutas sessionen och alla processer som utförs från terminalen kommer att sluta. Det är här kommandotnohup är praktiskt., Det ignorerar alla hangup signaler, och processen fortsätter att köras.

så här använder du kommandot nohup #

syntaxen för kommandotnohup är följande:

nohup COMMAND 

kommandot accepterar inga andra alternativ förutom standard--help och--version.,

låt oss ta en titt på följande exempel:

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

nohup kör kommandotmycommand I förgrunden och omdirigerar kommandoutgången till kommandot nohup.out arkiv. Den här filen skapas i den aktuella arbetskatalogen . Om användaren som kör kommandot inte har skrivbehörighet till arbetskatalogen skapas filen i användarens hemkatalog.

om du loggar ut eller stänger terminalen avslutas inte processen.,

att köra kommandot i bakgrunden #

att användanohup I förgrunden är inte särskilt användbart eftersom du inte kommer att kunna interagera med skalet förrän kommandot är klart.

för att köra kommandot i bakgrunden , Lägg till & – symbolen i slutet av kommandot:

nohup mycommand &

utmatningen innehåller Shell job ID (omgiven av parentes) och process ID:

 25177

Du kan använda jobb-ID för att föra kommandot in i förgrunden med hjälp av

 25177

id = ”0fdc5fcab4” >

kommando.,

om du av någon anledning vill avsluta processen, använd kommandotkill följt av process-ID:

kill -9 25132

omdirigera utmatning till en fil #

som standard omdirigerarnohup kommandoutgången tillnohup.out fil. Om du vill omdirigera utmatningen till en annan fil, använd standard shell omdirigering.,

till exempel, för att omdirigera standardutmatningen och standardfelet tillmycommand.out skulle du använda:

nohup mycommand > mycommand.out 2>&1 &

för att omdirigera standardutmatningen och standardfelet till olika filer:

nohup mycommand > mycommand.out 2> mycommand.err &

alternativ #

det finns flera alternativa program som du kan använda för att undvika ett kommando avslutas när du stänger terminalen eller kopplas bort.,

skärm #

skärm eller GNU-skärm är ett terminalmultiplexerprogram som låter dig starta en skärmsession och öppna valfritt antal windows (virtuella terminaler) inuti den sessionen. Processer som körs i skärmen fortsätter att köras när deras fönster inte syns även om du kopplas bort.

Tmux #

Tmux är ett modernt alternativ till GNU-skärmen. Med Tmux kan du också skapa en session och öppna flera fönster i den sessionen. Tmux sessioner är ihållande, vilket innebär att program som körs i Tmux fortsätter att köras även om du stänger terminalen.,

Disown #

disown är ett skal som tar bort ett skaljobb från skalets jobbkontroll. Till skillnad från nohupkan du också användadisown på processer som körs.

slutsats #

nohup låter dig förhindra att kommandon avslutas när du loggar ut eller lämnar terminalen.

Lämna ett svar

Din e-postadress kommer inte publiceras. Obligatoriska fält är märkta *