Il comando Screen offre la possibilità di scollegare un processo (o programma o script di shell) di lunga durata da una sessione e poi riattaccarlo in un secondo momento.
Quando la sessione viene disconnessa, il processo originariamente avviato dallo schermo è ancora in esecuzione e gestito dallo schermo. Puoi quindi ricollegare la sessione in un secondo momento e i tuoi terminali sono ancora lì, come li avevi lasciati.
In questo articolo, esaminiamo come gestire le sessioni del terminale virtuale utilizzando il comando schermo con esempi.
Esempio di comando dello schermo 1:esegui un comando (o uno script di shell) e stacca lo schermo
In genere eseguirai un comando o uno script di shell come mostrato di seguito dal comando.
$ unix-command-to-be-executed $ ./unix-shell-script-to-be-executed
Invece, usa il comando dello schermo come mostrato di seguito.
$ screen unix-command-to-be-executed $ screen ./unix-shell-script-to-be-executed
Dopo aver utilizzato il comando schermo, puoi staccarlo dal terminale utilizzando uno dei seguenti metodi.
Metodo di distacco dello schermo 1:stacca lo schermo usando CTRL+A d
Quando il comando è in esecuzione, premi CTRL+A seguito da d per staccare lo schermo.
Metodo 2 per staccare lo schermo:stacca lo schermo usando l'opzione -d
Quando il comando è in esecuzione in un altro terminale, digita il comando come segue.
$ screen -d SCREENID
Esempio di comando dello schermo 2:elenca tutti i processi dello schermo in esecuzione
Puoi elencare tutti i processi dello schermo in esecuzione utilizzando screen -ls comando.
Ad esempio:
Sul terminale 1 hai fatto quanto segue:
$ screen ./myscript.sh
Dal terminale 2 è possibile visualizzare l'elenco di tutti i processi dello schermo. Puoi anche staccarlo dal terminale 2 come mostrato di seguito.
$ screen -ls There is a screen on: 4491.pts-2.FC547 (Attached) 1 Socket in /var/run/screen/S-sathiya. $ screen -d 4491.pts-2.FC547 [4491.pts-2.FC547 detached.]
Esempio di comando dello schermo 3:allega lo schermo quando richiesto
È possibile allegare lo schermo in qualsiasi momento specificando l'id dello schermo come mostrato di seguito. Puoi ottenere l'id dello schermo dall'output del comando "screen -ls".
$ screen -r 4491.pts-2.FC547
Scenario di utilizzo dei comandi a schermo 1
Quando si ha accesso a un solo terminale, è possibile utilizzare il comando dello schermo per multiplexare il singolo terminale in più terminali ed eseguire diversi comandi. Potresti anche trovare molto utile combinare l'uso del comando dello schermo con l'uso di SSH ControlMaster.
Scenario di utilizzo dei comandi a schermo 2
Quando lavori in un ambiente di squadra, potresti avvicinarti alla scrivania dei tuoi colleghi e farti chiarire alcune cose. A quel punto, se necessario, puoi persino avviare alcuni processi dalla loro macchina usando il comando dello schermo e staccarlo quando hai finito. Più tardi, quando torni alla tua scrivania, puoi accedere e ricollegare lo schermo al tuo terminale.