When the session is detached, the process that was originally started from the screen is still running and managed by the screen. You can then re-attach the session at a later time, and your terminals are still there, the way you left them.
In this article, let us review the how to manage the virtual terminal sessions using screen command with examples.
Screen Command Example 1: Execute a command (or shell-script), and detach the screen
Typically you’ll execute a command or shell-script as shown below from the command.
$ unix-command-to-be-executed $ ./unix-shell-script-to-be-executed
Instead, use the screen command as shown below.
$ screen unix-command-to-be-executed $ screen ./unix-shell-script-to-be-executed
Once you’ve used the screen command, you can detach it from the terminal using any one of the following method.
Screen Detach Method 1: Detach the screen using CTRL+A d
When the command is executing, press CTRL+A followed by d to detach the screen.
Screen Detach Method 2: Detach the screen using -d option
When the command is running in another terminal, type the command as following.
$ screen -d SCREENID
Screen Command Example 2: List all the running screen processes
You can list all the running screen processes using screen -ls command.
On terminal 1 you did the following:
$ screen ./myscript.sh
From terminal 2 you can view the list of all screen processes. You can also detach it from terminal 2 as shown below.
$ 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.]
Screen Command Example 3: Attach the Screen when required
You can attach the screen at anytime by specifying the screen id as shown below. You can get the screen id from the “screen -ls