Come posso mantenere un comando iniziato dalla shell in esecuzione se mi disconnetto dalla shell?

12

Quali metodi esistono per mantenere un comando avviato dalla shell in esecuzione dopo aver effettuato il logout dalla shell?

    
posta NES 24.12.2010 - 11:03

4 risposte

11
  • Per mettere l'applicazione in secondo piano, usa & :

    command &
    
  • Se desideri chiudere il terminale e mantenere attiva l'applicazione, puoi utilizzare diverse opzioni: screen , dtach e nohup .

    nohup command &
    
  • La schermata è utile in quanto puoi riavviare una sessione e anche dtach è divertente.

  • Guarda i seguenti link per maggiori informazioni

risposta data karthick87 24.12.2010 - 11:26
5

Usa il comando nohup in questo modo:

nohup gedit /home/user/file.txt &
    
risposta data Javier Rivera 24.12.2010 - 11:20
5

Un comando utile (bash?) è disown . la cosa bella è che funziona per un lavoro già in esecuzione (a proposito, si disarchizzano i lavori, non i processi, quindi è necessario fare un ctrl-Z, bg prima di eseguire il disown sul lavoro. Ad esempio, immagina di fare quanto segue:

local % ssh some.where.com
remote % verylongscript.sh

Ora ti rendi conto che devi andare ma non vuoi che lo script venga ucciso all'uscita, quindi

ctrl-Z
remote % bg
remote % disown
remote % exit
local %

Ora, su remote , lo script è ancora in esecuzione.

    
risposta data Yossi Farjoun 24.12.2010 - 19:20
1

Io uso

nohup mycommand &

Ad esempio, per visualizzare un server virtuale VirtualBox, digito quanto segue in una shell remota (che chiudo quindi):

nohup VBoxHeadless --startvm "myvm" --vrdp=off &
    
risposta data Ivan 24.12.2010 - 21:13

Leggi altre domande sui tag