I know that after running top, I can press 1 and get a list of the CPUs with their utilization percentages. I suspect I can do this in batch mode too with the -b option, but I don't know how, and I cannot find it in the manual.
I need to read it periodically from a python program, so it must be in batch mode.
You can use a configuration file for this. The easiest way is to open top, and configure it the way you want. In this case, that means using 1 to get the per-CPU listing. Then have it write a configuration file with Shift+W. After that, it will use that config file whenever that user runs top, and keep the same appearance, even in batch mode.
Note that you'll probably need a
$HOME
variable defined, if you're using this via cron, or some other environment lacking the standard login definitions.I am not familiar with a way to do that with top, but you might have a look at
mpstat
which will show cpu utilization per core.