Linux – ls mit Pearl
Bunte Ausgabe auf dem Terminal

BetriebssystemOffice-AnwendungenOpen SourceSoftwareWorkspace

Protokolldateien ___

So praktisch auch die vielen Protokolldateien unter Linux sind, sohaben diese doch einen großen Nachteil: Sie sind unübersichtlich, und bei der Suche nach bestimmten Informationen gerät man dabei schnell ins Schielen.Wie ein eingefärbtes ls-Kommando kann auch eine farbenfrohe Ausgabe des Befehls grep ein praktisches Mittel sein. Hierzu speichern Sie folgendes kurze Perl-Skript im Verzeichnis ~/bin/rcg ? rcg steht dabei für Regex Colored Glasses.

#!/usr/bin/perl ?w
use strict;
use Term::ANSIColor qw(:constants);
my %taregt = ();
while (my $arg = shift) {
my $clr= shift;
if(($arg =~ /^-/ | (!$clr)) {
print “Verwendung: rcg [regex] [color] [regex] [color] …\n”;
exit;
}
$target{$arg} = eval($clr);
}
my $rst = RESET;
while(<>) {
foreach my $x (keys(%target)) {
s/($x)/$target{$x}$1$rst/g;
}
print;
}

Bei rcg handelt es sich um einen einfachen Filter, der Term::ANSIColor verwendet, um reguläre Ausdrücke einzufärben, die in der Kommandozeile angegeben werden. Dabei muss rcg in der Kommandozeile eine gerade Anzahl an Parametern übergeben werden. Die ungeraden Terme geben Ausdruck und die geraden die jeweilige Farbe an. Soll zumBeispiel alles mit dem Begriff sendmail in Magenta erscheinen, geben Sie Folgendes an: rcg sendmail MAGENTA < /var/log/ messages | less -r

Lesen Sie auch :
Autor: swasi