Uno script Perl verrà ancora eseguito dopo che esco dal mio account utente?

3

Ho avviato uno script Perl dal terminale che viene eseguito in background:

>perl myScript.pl &

Se esco, interromperà l'esecuzione del mio script?

Grazie!

    
posta Allen Liu 15.03.2012 - 23:38
fonte

2 risposte

4

Sì, è facile da provare. Scrivi uno script perl che aggiunge la data a un file ogni minuto ed eseguila in background. Disconnettersi, attendere 5 minuti, accedere, controllare 5 voci corrispondenti alle volte che si è disconnessi. Per farlo funzionare in futuro (troppo tardi se è già in esecuzione) usa nohup come spiegato in un'altra risposta. È possibile eseguire lo sfondo di uno script in primo piano dopo averlo avviato (CTRL-Z) ma non è possibile eseguirlo solo all'esecuzione

    
risposta data 15.03.2012 - 23:39
fonte
6

Oltre alla risposta di @ stuffe, se hai effettuato l'accesso tramite ssh ed esegui il tuo comando, morirà quando chiudi la connessione. Quindi, se fossi a casa e ssh 'edito nella tua workstation dell'ufficio ed esegui il tuo comando perl myScript.pl & , morirebbe quando exit ' edita dalla connessione ssh .

Per evitare questo problema, ti consigliamo di utilizzare il comando nohup , che risale ai giorni del teletype e significa "no hangup" --- essenzialmente fa in modo che il comando ignori POSIX HUP (hangup) segnale. È usato come:

nohup perl myScript.pl &

Continuerà a essere eseguito sulla workstation dell'ufficio anche dopo la disconnessione / disconnessione dal computer di casa.

    
risposta data 16.03.2012 - 00:53
fonte

Leggi altre domande sui tag