English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية
nohup Il nome completo in inglese è no hang up (non bloccare), utilizzato per eseguire comandi in background senza interrompere il programma, l'uscita del terminale non influisce sull'esecuzione del programma.
nohup Il comando, per impostazione predefinita (non reindirizzato), esce in un file chiamato nohup.out nella directory corrente, se il file nohup.out nella directory corrente non è scrivibile, il reindirizzamento di output viene effettuato a: $HOME/nohup.out nel file.
Tutti gli utenti
nohup Command [Arg …] [ & ]
Command:Comando da eseguire.
Arg:Alcuni parametri, possono specificare il file di output.
&:Fa eseguire il comando in background, il comando continua a funzionare anche dopo l'uscita del terminale.
Il seguente comando esegue lo script w3codebox.sh nella directory root in background:
nohup /root/w3codebox.sh &
Se nel terminale vedi la seguente uscita, significa che è stato eseguito con successo:
aggiungendo l'output a nohup.out
A questo punto, aprendo la directory root, possiamo vedere che è stato creato il file nohup.out.
Per fermare l'esecuzione, è necessario trovare il PID del script eseguito con nohup e poi eliminarlo con il comando kill.
ps -aux | grep "w3codebox.sh"
Spiegazione dei parametri:
Inoltre, è possibile trovare il PID con il comando ps -def | grep "w3codebox.sh".
Dopo aver trovato il PID, è possibile usarlo per eliminare con il comando kill PID.
kill -9 PID processo
Le seguenti comandi eseguono lo script w3codebox.sh nella directory root in background e redirigono l'input nel file w3codebox.log:
nohup /root/w3codebox.sh > w3codebox.log 2>&1 &
2>&1; Spiegazione:
Ridiretto standard errore 2 a output standard &1, output standard &1 viene poi ridiretto come input nel file w3codebox.log.