← Back to team overview

sslug-teknik team mailing list archive

RE: Stopping tail -f at a certain text string

 

Super !

tak

Mvh. Mads

-----Original Message-----
From: Peter Makholm [mailto:peter@xxxxxxxxxxx]
Sent: Tuesday, July 08, 2003 8:58 AM
To: sslug-teknik@xxxxxxxx
Subject: Re: [TEKNIK] Stopping tail -f at a certain text string


Mads Hommelgaard <mho@xxxxx> writes:

> Jeg har brug for at "streame" en textfil imens den bliver skrevet af
> et program, men den skal stoppe når der er skrevet en bestemt
> textstreng. Det skal bruges i et shellscript.

Det kan man nok ikke med standard-tail. Der findes et modul til perl,
File::Tail, hvormed det let kan gøres. Det må være noget ala:

perl -MFile::Tail -e '$r=tie
*FH,"File::Tail","/some/log/file";while(<FH>){print;last if /__END__/}'

Burde gøre det. '__END__' skal selvfølgelig erstattes af hvad du nu
ønsker at stoppe med. Du kan eventuelt også bytte om på print og last
if-kommandoerne hvis du ikke vil have den sidste linje skrevet ud.

-- 
 Peter Makholm     |        One thing you do is prevent good software from
 peter@xxxxxxxxxxx |      being written. Who can afford to do professional
 http://hacking.dk |                                     work for nothing?
                   |                                         -- Bill Gates