Eu tenho um comando que produz saída em cores e gostaria de inseri-lo em um arquivo com os códigos de cores removidos. Existe um comando que funciona assim, cat
exceto que retira códigos de cores? Eu pretendo fazer algo assim:
$ command-that-produces-colored-output | stripcolorcodes > outfile
cat
- o teste rápido que executei grep --color=auto myusername /etc/passwd
me dá meu nome de usuário em vermelho com texto branco elsewhree. grep --color=auto myusername /etc/passwd | cat
me dá texto branco simples
grep --color=auto
evita produzir saída colorida quando a saída padrão não é um terminal. Estou falando de um comando que gera incondicionalmente códigos de cores. (Como aponta alex acima, tal comportamento é sem dúvida um erro, mas às vezes precisamos de trabalhar com software imperfeito que não podemos facilmente corrigir a nós mesmos, e é isso que esta questão é sobre.)
isatty(stdin)
antes de fazê-lo. Se importa de compartilhar o que é esse programa?