30 lines
560 B
Perl
30 lines
560 B
Perl
#!/usr/bin/perl -w
|
|
|
|
use strict;
|
|
use Getopt::Long;
|
|
|
|
my %COLORS = ( 'red' => "\033[1;31m",
|
|
'green' => "\033[1;32m",
|
|
'yellow' => "\033[1;33m",
|
|
'blue' => "\033[1;34m",
|
|
'magenta' => "\033[1;35m"
|
|
);
|
|
|
|
my $color = 'red';
|
|
GetOptions("color=s" => \$color);
|
|
my $search = shift;
|
|
die "Usage: hilite <pattern>" unless(defined($search));
|
|
my $cstart = exists($COLORS{$color}) ? $COLORS{$color} : $COLORS{'red'};
|
|
my $cend = "\033[0m";
|
|
|
|
while (my $line = <>)
|
|
{
|
|
chomp($line);
|
|
my $match = $line;
|
|
$match =~ s/($search)/$cstart$1$cend/og;
|
|
print "$match\n";
|
|
}
|
|
|
|
exit(0);
|
|
|