Respostas:
A resposta correta é: -U '!root'(ou -u '!root'em alguns Ubuntus). Isso foi introduzido na versão v3.2.9:
man top para a opção -U:
Anexar um ponto de exclamação ('!') Ao ID ou nome do usuário instrui top a exibir apenas processos com usuários que não correspondem ao fornecido.
Lembre-se de colocar o ponto de exclamação e o nome de usuário entre aspas simples.
-uvez de -U.
top -u '!root'para NÃO conseguir !que o shell fosse interpretado (acredito que é o que está acontecendo sem as aspas simples).
ue depois!root
Ofiltro e o filtro RUID>999. Você precisa adicionar a RUIDcoluna primeiro.
top -U rootmostra apenas processos da raiz. Infelizmente, essa é a única opção para limitar os usuários de acordo com a página do manual.
ps aux | grep -v $USERNAMEver todos os processos, exceto o usuário que você especificou.
Conforme sugerido pelo Dr. Beco acima, o mecanismo de filtragem mais geral usa 'o / O' para ativar "Outra filtragem" enquanto topexclui / inclui mais de um usuário.
Por exemplo, para excluir "root" e um "ninguém" pode usar o comando o!USER=root<enter>o!USER=nobody.
Muitas visualizações interessantes são possíveis com esta opção de filtragem!
top. 3.3.9, enquanto 3.2.8 não.