GNU/Linux >> Linux Esercitazione >  >> Linux

Come usare il comando nohup di Linux

Introduzione

SIGHUP (Segnale Hang UP) è un segnale che termina un processo Linux quando il suo terminale di controllo è chiuso. Se si chiude accidentalmente un terminale o si perde la connessione con il server, tutti i processi in esecuzione in quel momento vengono automaticamente terminati.

Utilizzando il nohup Il comando è un modo per bloccare il SIGHUP segnale e consentendo il completamento dei processi anche dopo il logout dal terminale/shell.

In questo articolo imparerai come usare il nohup comando durante l'esecuzione dei processi.

Sintassi nohup

La sintassi per l'utilizzo di nohup il comando è:

nohup [command] [argument]

Opzioni nohup

Il nohup comando presenta due opzioni di comando di base, il --help e il --version opzioni.

Per visualizzare il messaggio di aiuto, eseguire il comando:

nohup --help

Per visualizzare le informazioni sulla versione, digita:

nohup --version

Nessun esempio

Esistono diversi modi per utilizzare nohup comando, incluso l'esecuzione del processo richiesto in background, l'esecuzione di più processi contemporaneamente o il reindirizzamento dell'output a un file diverso.

Gli esempi seguenti illustrano i casi d'uso comuni per nohup comando.

1. Esecuzione di un processo senza hup

Per eseguire un comando usando nohup senza argomenti, segui semplicemente la sintassi:

nohup [command]

La shell ignora l'output e lo aggiunge a nohup.out file.

Ad esempio, eseguendo example.sh bash (che è un semplice Hello World script) dovrebbe richiedere Hello World messaggio nel file nohup.out :

nohup bash example.sh

Verifica il contenuto del file con:

cat nohup.out

2. Esecuzione di un processo in background senza hup

L'esecuzione di un processo Linux in background libera il terminale su cui stai lavorando. Per eseguire un processo Linux in background con il nohup comando, aggiungi il & simbolo alla fine del comando:

nohup [command] &

Ad esempio, per eseguire example.sh bash in background, usa il comando:

nohup bash example.sh &

L'output mostra l'ID processo shell e l'ID processo - [1] 7366 nell'esempio seguente.

Per portare il comando in primo piano, digita:

fg

L'output indica se il processo è in corso o completato.

3. Esecuzione di più processi in background senza hup

nohup bach -c '[command1] && [command2]'

Sostituisci [command1] e [command2] con i comandi a tua scelta. Aggiungi altri comandi se necessario, assicurandoti di separarli con && .

Ad esempio, per visualizzare la data/ora e il calendario del mese corrente, eseguire:

nohup bash -c 'date && cal'

Poiché l'output è diretto a nohup.out file, usa il comando cat per elencare il contenuto del file e verifica il comando sopra:

cat nohup.out

L'output mostra la data e il calendario richiesti con il comando sopra.

4. Reindirizzamento dell'output su un file diverso

Come menzionato nella sezione precedente, nohup registra tutti i messaggi di output e gli errori in nohub.out file.

Reindirizza questi messaggi specificando una posizione personalizzata all'interno del comando:

nohup [command] > /path/to/output/file.txt

Nell'esempio seguente, l'output per il comando nohup bash -c 'date && cal' viene reindirizzato a output.txt file. Verificare l'output con il comando:

cat output.txt

Linux
  1. Come usare il comando Linux grep

  2. Come usare il comando Su in Linux

  3. Come utilizzare il comando dello schermo di Linux

  4. Come usare il comando ldconfig in Linux

  5. Come usare il comando ipset in Linux

Come utilizzare il comando di arresto di Linux

Come usare grep in Linux

Come utilizzare il comando Mkdir su Linux

Come usare il comando jobs in Linux

Come usare il comando schermo in Linux

Comando Nohup in Linux