Când executați un Unix locuri de muncă în fundal ( folosind &, bg comandă), și deconectare de la sesiune, procesul va fi ucis. Puteți evita acest lucru folosind mai multe metode — executând lucrarea cu nohup sau făcându-l ca lot folosind comanda at, batch sau cron.
acest sfat rapid este pentru începători. Dacă utilizați nohup de ceva timp, lăsați-ne un comentariu și spuneți-ne în ce situații utilizați nohup.,
În acest sfat rapid, să ne revizuiască modul de a face procesul de funcționare chiar și după deconectare, folosind nohup.
Nohup înseamnă no hang up, care poate fi executat după cum se arată mai jos.
nohup sintaxa:
# nohup command-with-options &
Nohup este foarte util atunci când trebuie să execute un shell-script sau comandă care ia o lungă perioadă de timp pentru a termina. În acest caz, nu doriți să fiți conectat la shell și așteptați finalizarea comenzii. În schimb, executați-l cu nohup, ieșiți din coajă și continuați cu cealaltă lucrare.
explicație despre nohup.,fișierul out
în mod implicit, ieșirea standard va fi redirecționată către nohup.fișier out în directorul curent. Și eroarea standard va fi redirecționată către stdout, astfel va merge și la nohup.afară. Deci, nohup – ul tău.out va conține atât mesaje de ieșire standard, cât și mesaje de eroare din scriptul pe care l-ați executat folosind comanda nohup.
în loc să utilizați nohup.afară, puteți redirecționa, de asemenea, de ieșire la un fișier folosind redirecționări shell normale.,
Exemplu: linii de Imprimare pentru ambele standard de ieșire & eroarea standard
while(true)doecho "standard output"echo "standard error" 1>&2 sleep 1;done
Executa script-ul fără redirecționarea
Executa script-ul cu redirecționarea
Daca te log-out de coajă și autentificare din nou, veți vedea în continuare custom-script.sh rulează în fundal.
$ ps aux | grep sathiya sathiya 12034 0.0 0.1 4912 1080 pts/2 S 14:10 0:00 sh custom-script.sh