perlunity.de - PERL | JAVASCRIPT | PHP | MySQL | APACHE



#!/COMMUNITY

Members: 5374
davon online: 1
weitere User: 28
Click for quality!




11.02.2012 / 12:39

Community-Member werden   |   Paßwort vergessen   |   OnlineMonitor (1) Wer ist online ... OnlineMonitor starten !
     

 

Home


PERLscripts


PHPscripts


JAVAscripts


Hilfreiches


Links2www


Newscenter


Community


Interna




Community  »  Perl: Allgemeines Forum zur Themenübersicht Themensuche Themenansicht in Thread-Modus


BeitragDateien mit Uhrzeit abfragen!
Seitenanfang
Hi,

habe ein Problem und zwar möchte ich prüfen ob eine LogDatei um 7:00 Uhr z.B. erstellt wurde!

Also Beispiel ich starte das Programm um 9:30 und möchte wissen ob um 9:00 eine LogDatei erstellt wurde! Wie kann ich das machen???

Gruss
Joerg

Datum: 14.12.2005-10:16

Beitragre: Dateien mit Uhrzeit abfragen!
Seitenanfang
Hi,
mit stat():

my $file = '/path/to/file/testlog.log';
my ($atime,$mtime,$ctime) = (stat($file))[8,9,10];
print "atime: $atime\nmtime: $mtime\nctime: $ctime\n";

das gibt Dir das unter Linux die Zeit (in Epoch Sekunden) aus.
Den Zeitpunkt, an dem die Datei erstellt wurde, kannst Du allerdings so gar nicht ermitteln, sondern nur, wann sie das letzte Mal geändert, bzw. geöffnet wurde. Reicht das?

svenXY

Datum: 14.12.2005-12:14

Beitragre: Dateien mit Uhrzeit abfragen!
Seitenanfang
Hi danke für den Tip nur das ist es leider nicht was ich benötige! Die Dateien werden stündlich neu erzeugt so das jede Stunde eine neue Datei abgelegt wird! Mal ne Frage ich habe was gefunden und zwar

next unless -M $file > 0 Dateien sind neuer als Prozess kann ich so eine Variable benutzen??

Gruss
Joerg

Datum: 14.12.2005-12:59

Beitragre: Dateien mit Uhrzeit abfragen!
Seitenanfang
Hi,
kannst Du die Logik nicht in die Log-Dateien legen (z.B. die Log-Dateien mit Uhrzeit benennen oder so)?

Ja, Du kannst sowas wie -M benutzen, aber das wird auch nur sehen, wann die Datei das letzte Mal verändert wurde. Sorry, ist so bei Linux.

Also entweder die Datei entsprechend benennen, oder, wenn es eine korrekte Log-Datei ist, die erste Zeile lesen und das Datum/ die Uhrzeit extrahieren, oder - als dritte Möglichkeit - bei erstem generieren der Datei eine zweite Datei generieren, in der (nur) das Datum steht.

Gruss,
svenXY

Datum: 14.12.2005-14:27

Beitragre: Dateien mit Uhrzeit abfragen!
Seitenanfang
Hi Sven,

mal ne Frage kann ich nicht die Abfrage so machen?? Hab schon getestet, war zwar erfolgreich aber vielleicht kannst Du mal nachsehen ob ich da noch ein Fehler drin habe???

Hier mein Einbau

sub existsActBackup
{
my ($file,$max_age) = @_;
my $tmpValue = 0;
#print LogDatei $tm ;
my $age = (time - (stat($file))[10]) / (60 * 60 * 1);#An dieser Stelle wird der Zeitstempel geprüft max. 1Stunde zurück!
if ($age < $max_age)
{
$tmpValue = 1;
print LogDatei " " . $tm . " Aktuelle Dateien vorhanden! \n";
print LogDatei "file stat($file)\n";
#print LogDatei "file2 $file \n";
}
else
{
$tmpValue = 0;
print LogDatei "Keine aktuellen Dateien vorhanden! \n";
}
return $tmpValue;

Datum: 14.12.2005-14:44

Beitragre: Dateien mit Uhrzeit abfragen!
Seitenanfang
Hi,
klar kannst Du es so machen. Allerdings ist es - wie gesagt, die ctime, die du hier heranziehst, das ist unter Linux die "time of last modification of fiule status information" - und damit meist die Zeit der letzten Modifikation. Wenn das Dein Problem löst - gut.

Code sieht soweit gut aus - mal davon abgesehen, dass Du weder use strict benutzt, noch Deine Vatiablen deklarierst, was schlechter Stil ist ;-)

svenXY

Datum: 14.12.2005-15:58

Beitragre: Dateien mit Uhrzeit abfragen!
Seitenanfang
Hi Sven,
ne die Variablen und so weiter hab ich noch vorher zu stehen habe nur den teil rauskopiert in dem die Zeit abgefragt wird! ;-(

Gruss Leissi

Datum: 14.12.2005-16:31

Beitragre: Dateien mit Uhrzeit abfragen!
Seitenanfang
Hi,

die $ctime ist die Zeitder letzten Indode-Änderung. Das kann also auch bedeuten, dass sie vielleicht umbenannt wurde oder ihre Dateirechte geändert.

Es ist unter Linux in der Tat, etwas schwierig mit der CreationTime, man sollte sich die in die erste Zeile einer Logdatei schreiben oder die Datei mit einem Erstellzeitpunkt im Namen erstellen.

-uw

Datum: 16.12.2005-04:44

Beitragre: Dateien mit Uhrzeit abfragen!
Seitenanfang
also ungefähr genau das, was ich vier postings vorher vorgeschlagen habe ;-)

Datum: 16.12.2005-09:16

-






-
-