¿Cómo puedo hacer que grep respete los colores en una tubería?

¿Cómo puedo hacer que grep respete los colores en una tubería?

En un shell de Linux moderno, muchos comandos (como ls) pueden generar texto en color.

Si lo canalizas con otros comandos, pierdes el color. P.ej:

$ ls path
[... folders in blue, executables in green,..etc ]

$ ls path | grep foo
[... all in black and white]

¿Cómo puedo hacer que grepla segunda parte de la tubería respete los lscolores (o cualquier otro comando ejecutado)?

Respuesta1

Puede indicar lsque siempre coloree la salida, ya que cuando se escribe en una tubería --color=autono agrega color.

Si lo hace, ls --color=always path | grep --color=never fooagregará lscolor y evitará grepque se reemplace con sus propios colores.

Respuesta2

Ambos comandos tienen un --color=alwaysargumento.

$ ls --color=always | grep e

información relacionada