I would like to have a list of all users that are active on my Linux system, including those who have running but detached screen sessions. The who command only shows me currently logged in users, but not users with detached screen sessions and the like.

I was contemplating parsing the output of ps but that would also make a user show if if he has a cron job running.



$ ps axno user,tty | awk '$1 >= 1000 && $1 < 65530 && $2 != "?"' | sort -u

This should tell you all UIDs with processes with a session terminal (like a window in screen). I use the UID to be weed out the 'system' users (like apache) and nobody (high UID), and ignore daemons.


You can try who, and the output of ps with a grep:

~$ ps aux | grep screen

And filter on user:

~$  ps aux | grep screen | grep $USER

(replace $user with the username).

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.