2012-04-05 9 views
8

que tienen ls y grep alias a 'ls -color = auto' y 'grep -color = auto' para la salida coloreada, pero cuando la tubería a más se pierde el color.¿Es posible colorear el flujo de salida a más?

Ni más ni menos parece tener un parámetro para colorear su producción. ¿Hay alguna manera de hacer esto?

Respuesta

16

El problema no es que more y less no colourizing su producción, es que ls no envía el color, ya que está conectado a otro proceso en lugar de la terminal.

No se puede obtener fácilmente ls para ser más inteligentes acerca de cuándo se da salida a color, pero puede agregar --color para forzarlo a color de salida cuando se está canalizando a more

Cuando se tiene la salida de color, ... |less -R utilizar para hacer less pasar los colores a través de la terminal en lugar de mostrar los códigos de escape como texto

+0

Perfecto, gracias. – Kurtosis

+2

Lo ideal es que quieras 'menos -R' en lugar de' menos -r'. –

+0

gracias @ jørgensen, acabo de volver a leer la página del manual y acepto. actualizado arriba – je4d

3
ls --color | less -r 

Probado en Linux, espacio de usuario de GNU.

+0

Gracias, eso también funciona. También te daría el cheque verde si pudiera, pero te habría derrotado por unos segundos. ¡Gracias! – Kurtosis

+0

Gracias por las gracias :-) La respuesta de je4d también es mucho más completa, por lo que IMO se merece el tic. – jimw

Cuestiones relacionadas