2009-02-19 14 views
11

Uwielbiam używać poleceń UNIX/bash obsługujących kolorowe wydruki. W konsekwencji mam zdefiniowane kilka aliasów, które automatycznie włączają kolorowe opcje poleceń, które znam, obsługują tę opcję. Jestem jednak pewien, że istnieją setki poleceń, które obsługują kolorowe wydruki - chciałbym wiedzieć, jakie one są.Jakie polecenia UNIX obsługują kolorowe wydruki?

Te w moim pliku ~/.bash_aliases są:

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

Co jeszcze? Czy istnieje lista wszystkich poleceń obsługujących kolorowe wydruki? Albo jeszcze lepiej, jakaś komenda służąca do przeglądania stron lokalnych i wyciągania odpowiednich nazw poleceń.

+1

ściśle mówiąc, są to programy GNU (AFIAK). I jak wszyscy wiemy: GNU's Not Unix! – MighMoS

+0

Chyba masz na myśli więcej niż dwa kolory? :-) –

Odpowiedz

9

Dlaczego nie spróbować:

man -K color 

To powinno wyszukiwania dla koloru słowo we wszystkich swoich stron man (treści, a nie tylko nagłówki).

on pyta, na każdej stronie człowieka, czy chcesz otworzyć i wyświetlić stronę:

$ 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 

$ 

wewnątrz każdej indywidualnej strony człowieka, można użyć zwykłej metody wyszukiwania (np /color<ENTER>) za znalezienie tekst. Po zakończeniu pracy ze stroną podręcznika, po prostu zakończ i będzie kontynuował wyszukiwanie.

+0

Mój system używa małych liter k. Ale zwykle używam apropos. –

+2

Dennis, myślę, że małe litery k po prostu przeszukują nagłówki, a nie pełny tekst. – paxdiablo

3

Bardzo lubię kolorować mój monit, aby się wyróżniał. Przydatny artykuł na ten temat jest dostępny here.

8

Szybkie wyszukiwanie google również ujawnia grc i grcat, które można wykorzystać do pokolorowania dowolnego dowolnego tekstu lub polecenia. Nie wiem, jak dobrze działają. Z pewnością wypróbuję je teraz, odkąd je znalazłem.

Ah, zaczynamy. grc używa pliku /etc/grc.conf do pokolorowania danego polecenia w oparciu o to, które wyrażenie regularne pasuje. Szybkie grep z moich (Ubuntu 8.10) /etc/grc.conf ujawnia obecnie posiada wsparcie dla:.

[~]$ 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 

Ale jestem pewien, że można dodawać własne dla innych programów jesteś zainteresowany

Aby korzystać grc, po prostu umieścić go przed poleceniem chcesz colorise (powiedzmy diff):

grc diff foo.txt bar.txt 

I można z pewnością alias diff='grc diff' aby diff colorised domyślnie.

+0

'grc' miał skrypt pomocniczy:' grcat'. Oto przykład kolorowania wszystkich wielkich liter na czerwono. Krok 1: Skonfiguruj plik konfiguracyjny: 'printf" regexp = [A-Z] \ ncolours = red \ n "> ~/.grc/red-caps' Krok 2; Użyj go: 'echo Hello World | grcat red-caps' –

+0

Używam 'grcat' i naprawdę to lubię. –

0

Ten skrypt demo bash kolory katalogi czerwony w większości terminali - na pewno działa w xterms i cygwin pod Windows. Można dostosować kolory, błahy z kodów ucieczkowych - Google dla LS_COLOR do listy kodów kolorystycznych:

#!/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 
Powiązane problemy