Programek pod linuxem - asi trochu OT
Jan Fuchs
fuky na seif.cz
Pondělí Říjen 13 00:12:00 CEST 2003
Dobrý den,
podle mě není dobrý nápad číst IP z /var/log/message
> Zvladnul by nekdo udelat script (v libovolnem linuxovem nastroji vcetne
> perlu, pythonu ..?)
--- SCRIPT ---
#!/usr/bin/perl
$infile = "./soubor.conf.bak";
$outfile = "./soubor.conf";
system("cp $outfile $infile");
open INPUT, "<$infile" or die "$infile nelze otevřít: $!";
open OUTPUT, ">$outfile" or die "$outfile nelze otevřít: $!";
while(<INPUT>) {
$_ =~ s/^($ARGV[0]) (\S+)$/$1 $ARGV[1]/;
$_ =~ s/^(\S+ \S+ $ARGV[0] \S+ \S+ $ARGV[0]) (\S+) (\S+)$/$1 $ARGV[1] $3/;
print OUTPUT $_;
}
close INPUT;
close OUTPUT;
--- SCRIPT ---
Script má dva argumenty pocitac IP
\S+ libovolná skupina znaků mimo bílých, min. jeden znak
--- soubor.conf ---
pocitac 255.255.255.255
arg arg pocitac arg arg pocitac 255.255.255.255 arg
arg arg jiny_pc arg arg jiny_pc 125.125.125.125 arg
--- soubor.conf ---
V Perlu neprogramuju, jen jsem rychle mrknul na jeho syntaxi a
zkusil vyřešit váš problém, takže to jde určitě napsat elegantněji...
S pozdravem Fuky
--
/************* GNU.CZ Linux.CZ Debian.CZ ***************
* WWW.Seif.CZ
*******************************************************
* Žádný program není bezchybný, dokonalý ani nejlepší,
* to samé platí i o lidech a nejen o nich.
* -- Jan Fuchs --
*******************************************************/
Další informace o konferenci Linux