2013-07-25 11 views

risposta

11

È necessario trovare il PID e quindi il numero kill -CONT <pid>.

È possibile trovare il PID utilizzando ps con alcune opzioni per produrre un output esteso. I lavori interrotti hanno un T nella colonna STAT (o S).

Se riesci a continuare il processo ma non ha più un terminale di controllo (e ne ha bisogno uno), potrebbe bloccarsi o andare in loop: tieni d'occhio l'utilizzo della CPU.

+2

Questo ('kill -CONT ...') è il trucco giusto in generale, ma fai attenzione a due ulteriori cose: (1) Questo confonderà leggermente la sua shell madre (chiamiamola * P * per Parent), che non ottiene si noti che il processo (chiamiamolo * T *, per sTopped) è stato continuato così * P * pensa * T * è ancora fermo. (2) Se il processo * T * * è * ancora collegato al suo terminale di controllo e prova a fare alcuni "tty ops", la shell non avrà trasferito le informazioni del gruppo di controllo * del terminale * e * T * si fermerà immediatamente di nuovo con 'SIGTTIN' o' SIGTTOU'. – torek

+0

A questo punto, è probabilmente una buona idea menzionare 'screen' o' tmux'. – BraveNewCurrency

8

You can type in fg to resume process. Se si dispone di più processi, è possibile digitare fg processname, (per esempio fg vim) o fg job_id.

Per trovare l'ID del lavoro, utilizzare il comando jobs.

citazione pertinente da wikipedia su ciò che fa:

fg è un comando di controllo lavoro nei sistemi operativi di tipo Unix Unix e che riprende l'esecuzione di un processo sospeso portando in primo piano e quindi riorientamento delle sue flussi di input e output standard al terminale dell'utente.

+0

fg richiede il numero di lavoro. Sto cercando di farlo da remoto. –

+1

digita 'lavori' per ottenere l'elenco dei lavori – jh314

+2

@ jh314:' jobs' è una shell incorporata (necessariamente così, dato che i numeri di lavoro sono locali per quel processo) quindi dovrebbe avere accesso al terminale su che la shell è in esecuzione, annullando la necessità di un curriculum "non shell". Questo è possibile se si impostano le cose in anticipo (ad es. Usando 'screen') o si ha accesso al desktop remoto, ma sta cercando di farlo senza quelle. – torek

2

Per scoprire job-id e PID, utilizzare "posti di lavoro -l", in questo modo:

$ jobs -l 
[1]+ 3729 Stopped     vim clustertst.cpp 

La prima colonna è job_id, e il secondo è pid.

Problemi correlati