Shared Linux hosts often run login shells, service workers, scheduled jobs, and deployment tasks under different accounts. Viewing only one user's processes narrows a crowded process table to the account responsible for the work being checked.
The ps command reads the process table exposed through /proc and can select rows by user name or numeric user ID. The -u selector matches the effective user, which is the identity used for most permission checks, while -U matches the real user that started the process.
Most ordinary processes have the same real and effective user, so ps -u is usually enough for service accounts and login users. On systems where /proc visibility is restricted, an unprivileged account may see fewer details for other users' processes, and a header-only result means no matching process is visible in that shell context.
Related: How to view active processes in Linux
Related: How to kill a process in Linux
$ id appuser uid=1001(appuser) gid=1001(appuser) groups=1001(appuser)
Replace appuser with the login or service account being inspected.
$ ps -u appuser -f UID PID PPID C STIME TTY TIME CMD appuser 53 49 0 20:57 ? 00:00:00 sleep 600 appuser 55 50 0 20:57 ? 00:00:00 sleep 600
-u selects by effective user name or ID. Use sudo ps -u appuser -f only when local /proc permissions hide process details needed for administration.
$ ps -u appuser -o user,pid,ppid,stat,etime,args USER PID PPID STAT ELAPSED COMMAND appuser 53 49 S 00:00 sleep 600 appuser 55 50 S 00:00 sleep 600
The STAT column shows the process state, and ELAPSED shows how long the process has existed.
$ ps -U appuser -u appuser -o ruser,euser,pid,stat,args RUSER EUSER PID STAT COMMAND appuser appuser 53 S sleep 600 appuser appuser 55 S sleep 600
-U selects the real user, and -u selects the effective user. ps selection options are additive, so this form includes processes that match either selector.
$ ps -u appuser,deploy -o user,pid,stat,args USER PID STAT COMMAND appuser 53 S sleep 600 deploy 54 S sleep 600 appuser 55 S sleep 600
Separate user names or numeric IDs with commas when more than one account should appear in the same output.
$ ps -u nobody -o user,pid,args USER PID COMMAND
A header with no process rows means no process matched that selector in the current view. Recheck the account name with id when the result is unexpected.