Supponiamo che manchi sia GNU screenche tmux(e X11 e console virtuali) ma desideri passare da una shell di login a un'altra shell interattiva.
Prima accedi alla console, quindi avvii una nuova shell, bloccando temporaneamente la shell di accesso. Per riavere la shell di accesso per fare un po 'di lavoro lì, lo faresti suspend. Quindi dovresti fgriavere la shell interattiva per continuare con qualunque cosa tu abbia fatto lì.
In effetti, con il controllo dei processi, la shell di accesso potrebbe generare una serie di shell interattive come processi in background a cui è possibile passare fg %1, fg %2ecc., Ma per tornare alla shell di accesso, è necessario utilizzare suspendse non si desidera manualmente kill -s STOP $$.
Si noti inoltre che Ctrl+ Zal prompt in una shell interattiva non lo sospenderà.
EDIT: inizialmente avevo una lunga sezione ipotetica sull'uso di suspendin uno script, ma poiché il comando richiede il controllo del lavoro e poiché le shell non interattive di solito non hanno il controllo del lavoro, ho eliminato quella sezione.
La sezione eliminata viene suspendsostituita da kill -s STOP $$(questo in realtà non appartiene più alla risposta, ma può comunque essere interessante per gli altri):
Supponiamo che tu abbia un processo in background (uno script) in uno script e che questo processo in background ad un certo punto debba fermarsi e attendere che il processo genitore gli dica di continuare. Questo potrebbe essere in modo che il genitore abbia il tempo di estrarre e spostare i file in posizione o qualcosa del genere.
Lo script figlio sospenderebbe ( kill -s STOP $$) e lo script padre gli invierebbe un CONTsegnale quando andava bene continuare.
Ti dà l'opportunità di implementare una sorta di sincronizzazione tra un processo genitore e un processo figlio (anche se molto basilare poiché il processo della shell genitore ha più o meno bisogno di indovinare che il processo figlio è sospeso, sebbene ciò possa essere risolto avendo il figlio trap CONTe non sospendere se quel segnale viene ricevuto troppo presto).
fork/execchiamata di sistema