Process Listing (ps) Command - Linux Process Management | Online Free DevTools by Hexmos

Master Linux process management with the ps command. Learn to list, sort, and filter processes by user, PID, PPID, and resource usage. Free online tool for developers.

Process Listing (ps) Command

The ps command is a fundamental utility in Linux and Unix-like operating systems used to display information about the currently running processes. It provides a snapshot of the system's active processes, allowing users and administrators to monitor system performance, identify resource-intensive applications, and troubleshoot issues. Understanding how to effectively use the ps command is crucial for system management and debugging.

List All Processes

To get a comprehensive view of all processes running on the system, including those not associated with a terminal, use the aux options:

ps aux

This command displays processes for all users (a), including those without a controlling terminal (x), and shows processes in a user-oriented format (u).

Display Process Tree

Visualizing the parent-child relationships between processes can be very helpful. The axjf options provide a process tree view:

ps axjf

This format shows the process hierarchy, making it easier to understand how processes are spawned.

Filter Processes by User

You can list processes belonging to a specific user or a set of users. To list processes owned by a particular username:

ps -aufoouser

To display processes for a list of usernames:

ps -f -u username1, username2, .... ,usernameN

The -f option provides a full-format listing.

Filter Processes by PID and PPID

Filtering by Process ID (PID) or Parent Process ID (PPID) is useful for targeting specific processes or their children.

To display processes with given PIDs:

ps -f -p 25001, 4567, 789

To display processes with a particular parent ID (e.g., 5589):

ps -f -ppid 5589

Custom Process Formatting

The ps command allows for highly customized output. You can specify exactly which fields you want to display:

ps -eo pid,user,command

This command will only show the Process ID, User, and Command for each process.

Display Processes for Current User

To quickly see all processes owned by the currently logged-in user:

ps -U $USER

Sort Processes

Sorting processes by resource usage, such as CPU or memory, is essential for performance monitoring. To sort processes based on memory usage in descending order:

ps aux --sort pmem

You can also sort by CPU usage using pcpu.

Show Environment Variables

To view the environment variables for each process, you can set the COLUMNS environment variable to a large value and use the axel options:

COLUMNS=10240 ps axel

This provides detailed information about each process's environment.

The ps command is a powerful tool for understanding and managing processes on your system. By mastering these common options, you can significantly enhance your ability to monitor and maintain your Linux environment.

External Resources: