What is the difference between
top command ? I see that both can display information about running processes . Which one should be used when ?
top is mostly used interactively (try reading man page or pressing "h" while
top is running) and
ps is designed for non-interactive use (scripts, extracting some information with shell pipelines etc.)
top allows you display of process statistics continuously until stopped vs.
ps which gives you a single snapshot.
top enables you to see your processes ordered by the amount of processor power they use.
ps enables you to see all your processes, or just the processes used by certain users, for example
root or yourself.
top should be used to see which processes are most active,
ps could be used to see which processes you (or any other user) are running currently.
for more information about how to use
man top or
man ps in your terminal ;)
ps - Reading Process Information
top - Resource Monitoring like top resources using cpu, memory usage and more.
For CPU usage,
ps displays average CPU usage over the lifetime of the process as it is instantaneous and would always be 0% or 100%.
top gives a more instantaneous look at it from averaging over recent polls.
More information here: Top and ps not showing the same cpu result