Em um shell Linux moderno, muitos comandos (como ls
) podem gerar texto colorido.
Se você canalizá-lo com outros comandos, perderá a cor. Por exemplo:
$ ls path
[... folders in blue, executables in green,..etc ]
$ ls path | grep foo
[... all in black and white]
Como posso fazer com que grep
a segunda parte do tubo respeite as ls
cores (ou qualquer outro comando executado)?
Responder1
Você pode dizer ls
para sempre colorir a saída, pois quando está gravando em um pipe com --color=auto
ele não adiciona cor.
Se você fizer ls --color=always path | grep --color=never foo
isso, adicionará ls
cor e impedirá grep
a substituição por suas próprias cores.
Responder2
Ambos os comandos têm um --color=always
argumento.
$ ls --color=always | grep e