Você está comparando maçãs com laranjas. top
está exibindo a proporção da potência da CPU do seu computador que o processo usou durante o último intervalo de amostragem (alguns segundos, geralmente). ps
, com %C
, está exibindo a proporção do tempo que o processo estava sendo executado durante a vida útil desse processo. Devido à maneira como as estatísticas de processo são reunidas, qualquer comando que exiba o uso da CPU nos últimos segundos deve ser executado por alguns segundos, e ps
não tem nenhuma opção para fazer isso. No entanto, você pode usar top
no modo em lote, top -b -n 2 -d 0.001
. Ele pausará a coleta de dados e, em seguida, fornecerá sua listagem sobre STDOUT. Isso permitirá que você analise top
output ou use-o em scripts.