Zmena presmerovani vystupu programu do souboru za jeho behu

Petr Vileta stoupa na practisoft.cz
Úterý Březen 15 17:49:59 CET 2005


Jiri Fritzl wrote:
> Mate pravde, bohuzel prislusna aplikace neni pod mou kontrolou, ale pod
> kontrolou inzenyru-techniku, kteri rozumeji mechanice a fyzice, ale ne
> uz programovani (jadro je ve fortranu, vata okolo je C a C++ = silenost
> sama). Bohuzel zmena kodu nepripada v tomto pripade v uvahu, jsme radi
> ze ten pazmek jakz takz funguje.
Pak by skutecne bylo nejlepsi, jak tu nekdo navrhoval, napsat program
logr.pl (jako kavova sedlina :-))

---CUT---
#!/usr/bin/perl
use strict;
my $vstup = '';
my $velikost = 0;
my $cesta = '/var/log/mojelogy/';
my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime(time);
$mon++; $year+=1900;
my $log = $cesta . sprintf("%04d%02d%02d",$year,$mon,$day) . '.log';
open OUT, ">$log";
while(1)
    {
    $vstup = <STDIN>;
    $velikost+= length($vstup);
    if($velikost > 1000000000)
        {
        close OUT;
        $velikost=length($vstup);
        ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) =
localtime(time);
        $mon++; $year+=1900;
        $log = $cesta . sprintf("%04d%02d%02d",$year,$mon,$day) . '.log';
        open OUT, ">$log";
        }
    print OUT $vstup;
    }
close OUT;
---CUT---

a smerovat vystup do nej. On si zaridi logovani po svem a nic se nemuze
ztratit. Jen to nemam vyzkousene a psal jsem to z hlavy.

--
Petr

Na mail uvedeny v headeru zpravy nema cenu nic posilat, konci to v PR* :-)
Odpovidejte na petr na practisoft cz



Další informace o konferenci Linux