Estou tentando processar a saída 'top' para definir os dados de desempenho da CPU. Quando eu apenas grep a saída, ela é colorida: ou Os números estão em negrito e adiciona muitos dados desnecessários à saída:
Tentei remover a resposta dos códigos de cores, mas não funcionou. Quero evitar outras respostas muito mais complexas nessa pergunta por uma questão de desempenho.
Eu tentei desabilitar as cores trocando o modo de termo, mas sem sorte:
Então, como posso desativar a saída de cores?
PS: descobri como obter dados: posso awk apenas números, então funciona, mas ainda me pergunto se há alguma maneira de desativar a cor aqui.
Aqui está uma maneira de desativar a saída colorida em
top
:Etapa 1: executar
top
Etapa 2: pressione a
z
tecla para alternar o modo de corPasso 3: Pressione a
W
tecla para salvar a nova configuraçãoPara referência, consulte a página principal do manual , especificamente a Seção 4: Comandos interativos . Lá você encontrará as seguintes descrições desses dois comandos interativos:
Veja também estes posts relacionados:
Definir cor padrão para o topo
Definindo a variável de ambiente TOPCOLORS
O comando que você está procurando é:
-b é para o modo de lote - ou seja, projetado para ser analisado sem sequências de cores de escape ASCII.
-n é o número de contagens -n1 representa um dump de processo único.
Não relacionado: para suprimir cores em ls, use
\ls
. Para quaisquer outros comandos,\grep
também suprimirá as cores de saída. É possível canalizar a saída do comando assim:ls | \grep .
e isso removerá qualquer saída colorida de um comando.