2009-02-19 10 views
11

Me gusta usar comandos UNIX/bash que admiten salida de color. En consecuencia, tengo definidos algunos alias que activan automáticamente la salida coloreada de los comandos que sé que admiten esta opción. Sin embargo, estoy seguro de que hay cientos de comandos que admiten salida en color. Me gustaría saber cuáles son.¿Qué comandos de UNIX admiten salida de color?

Los que están en mi archivo ~/.bash_aliases son:

ls --color=auto 
grep --color 
phpunit --ansi 

¿Qué más hay? ¿Hay alguna lista en alguna parte de todos los comandos que admiten salida coloreada? O mejor aún, algunos comandos para agrupar mis páginas man locales y seleccionar los nombres de comando apropiados.

+1

Estrictamente hablando, estos son programas de GNU (AFIAK). Y como todos sabemos: ¡GNU no es Unix! – MighMoS

+0

Supongo que te refieres a más de dos colores? :-) –

Respuesta

9

Por qué no pruebas:

man -K color 

Eso se debe buscar la palabra de color en todas sus páginas man (contenido, no sólo los encabezados).

Se pide, para cada página del manual, si desea abrir y ver la página:

$ man -K color 
/usr/share/man/mann/Widget.n.gz? [ynq] y 
/usr/share/man/mann/usual.n.gz? [ynq] y 
/usr/share/man/mann/Toplevel.n.gz? [ynq] n 
/usr/share/man/mann/itk.n.gz? [ynq] n 
/usr/share/man/mann/Archetype.n.gz? [ynq] n 
/usr/share/man/man8/squid.8.gz? [ynq] n 
/usr/share/man/man7/Xprint.7.gz? [ynq] 
/usr/share/man/man7/X.7.gz? [ynq] 
/usr/share/man/man7/urxvt.7.gz? [ynq] 
/usr/share/man/man7/term.7.gz? [ynq] q 

$ 

Dentro de cada página individual del hombre, puede utilizar su método de búsqueda normal (por ejemplo, /color<ENTER>) para encontrar la texto. Cuando haya terminado con una página man, simplemente salga y continuará buscando.

+0

Mi sistema utiliza una minúscula k. Pero generalmente uso apropos. –

+2

Dennis, creo que la letra minúscula k solo busca los encabezados, no el texto completo. – paxdiablo

3

Soy bastante aficionado a colorear mi mensaje para que se destaque. Un artículo útil sobre ese tipo de cosas está disponible here.

8

Un poco de búsqueda en Google también revela grc y grcat, que se pueden utilizar para colorear cualquier texto o comando arbitrario. Sin embargo, no estoy seguro de lo bien que funcionan. Ciertamente voy a probarlos ahora que los he encontrado.

Ah, aquí vamos. grc usa el archivo /etc/grc.conf para colorear un comando dado según la expresión regular que coincida. Un grep rápida de mi (Ubuntu 8.10) /etc/grc.conf revela que actualmente tiene soporte para:.

[~]$ less /etc/grc.conf | grep '^#' 
# anything to do with irc 
# log file 
# ping command 
# traceroute command 
# gcc command 
# make command 
# netstat command 
# diff command 
# last command 
# ldap tools 
# cvs command 

Pero estoy seguro de que podría añadir su propia para otros programas le interesa

Para utilizar grc, en pocas palabras antes de que el comando que desea COLORISE (digamos diff):

grc diff foo.txt bar.txt 

Y ciertamente se podría hacer alias diff='grc diff'diff colorised por defecto.

+0

'grc' tenía un guión de ayuda:' grcat'. Aquí hay un ejemplo de colorear todas las letras mayúsculas en rojo. Paso 1: Configure el archivo de configuración: 'printf" regexp = [A-Z] \ ncolours = red \ n "> ~/.grc/red-caps' Paso 2; Úselo: 'echo Hello World | grcat red-caps' –

+0

Yo uso 'grcat' y me gusta mucho. –

0

Este script demo bash colores directorios rojos en la mayoría de los terminales - sin duda funciona en xterms y cygwin en Windows. Puede adaptar los colores por tocar el violín con los códigos de escape - Google para LS_COLOR para las listas de códigos de color:

#!/bin/bash 

color_red() 
{ 
    echo -e "\033[01;31m$1\033[00m" 
} 

for FILE in $* 
do 
    if test -d $FILE 
    then 
     color_red $FILE 
    else 
     echo $FILE 
    fi 
done 
Cuestiones relacionadas