In this article, we will see how to kill all detached screen session on Linux or Unix based systems. Screen utility provides a powerful feature of managing task and processes by detaching the session and allow it to run on background while you can perform other activities on foreground. This is mainly useful when you have to perform a long running task on remote servers such as taking database backup where you don’t want the session to disconnect in between. Detaching session is a very flexible feature that allows you to perform multiple task from a single terminal interface.
You can always reattach the session to terminal and continue with your task. However sometimes you might face a scenario where you would like to kill all detached sessions running on the background. Here we will see how you can kill all the detached sessions on Linux or Unix based systems.
Also Read: How to Install PowerShell on Ubuntu or Debian
Before looking into how to kill detached sessions, let’s first create few sessions.
cyberithub@ubuntu:~$ screen -d -m top cyberithub@ubuntu:~$ screen -d -m watch ps -ef
As you can see above, we are creating two screen sessions. Below are the options used with above screen commands:-
To list all running screen sessions, run screen -ls
command as shown below.
cyberithub@ubuntu:~$ screen -ls There are screens on: 182568..ubuntu (23/03/24 06:16:37 PM IST) (Detached) 179434..ubuntu (23/03/24 06:15:39 PM IST) (Detached) 2 Sockets in /run/screen/S-cyberithub.
To list only the detached screen sessions, run screen -ls | grep Detached
command as shown below.
cyberithub@ubuntu:~$ screen -ls | grep Detached 182568..ubuntu (23/03/24 06:16:37 PM IST) (Detached) 179434..ubuntu (23/03/24 06:15:39 PM IST) (Detached)
To kill a detached session, run screen -S -X quit
command. For example, in our case we would like to kill a session with id 182568
, so in that case we have to run screen -S 182568 -X quit
command as shown below.
cyberithub@ubuntu:~$ screen -S 182568 -X quit
Here are the details of the options used with above screen command:-
Before killing a detached screen session, if you are looking to reattach then run screen -r
command. For example here we are reattaching session id 182568
by using screen -r 182568
command. Here -r
option is used to reattach a session. Then killing that session by pressing q
. Some of the sessions can also be killed by running exit
or Ctrl+c
command.
cyberithub@ubuntu:~$ screen -r 182568 [screen is terminating]
If you are looking to kill all the detached sessions only, then you can easily do it by using below command.
cyberithub@ubuntu:~$ screen -ls | grep Detached | cut -d. -f1 | awk '{print $1}' | xargs kill &> /dev/null
Now if you check again, you will see there are no active screen sessions running.
cyberithub@ubuntu:~$ screen -ls No Sockets found in /run/screen/S-cyberithub.
The latest interim release of Ubuntu introduces “devpacks” for popular frameworks like Spring, along with…
Ubuntu 25.04, codenamed “Plucky Puffin”, is here. This release continues Ubuntu’s proud tradition of integrating…
Ubuntu released its 20.04 (Focal Fossa) release 5 years ago, on March 23, 2020. As…
Focal Fossa will reach the End of Standard Support in May 2025, also known as…
Ubuntu MATE 25.04 is ready to soar! 🪽 Celebrating our 10th anniversary as an official…
Welcome to the Ubuntu Weekly Newsletter, Issue 887 for the week of April 6 –…