VF-Sascha Geschrieben 5. Februar 2010 Geschrieben 5. Februar 2010 (bearbeitet) Hallo zusammen, hab ein Problem wofür ich gerade noch keine Lösung habe. Hoffe ihr habt eine. Problem: Ich habe mehrere Log-Dateien in einem Log Verzeichnis. Da die Dateibenennung ein bisschen wirr ist und ich sie nicht ändern kann muss ich rausfiltern welche dieser Logdateien die aktuellste ist. Das ganze möchte ich in Perl oder in einem Shell Skript schreiben. Kann mir einer helfen? Gruß Sascha Bearbeitet 5. Februar 2010 von VF-Sascha
VF-Sascha Geschrieben 5. Februar 2010 Autor Geschrieben 5. Februar 2010 Nach langem probieren hab ich es endlich raus: my @logfiles=(""); #hier kommen dann die logs rein my $logfile=""; chdir($logpath); foreach $logfile (@logfiles) { my @modifydate = (localtime( time - ( 86400 * -M $logfile) ))[3..5]; my @today = (localtime)[3..5]; if( "@modifydate" eq "@today") { print "$logfile ist das aktuellste"; } } Gruß Sascha
lupo49 Geschrieben 5. Februar 2010 Geschrieben 5. Februar 2010 Per Shell (wahrscheinlich unsauber) 'ls' -lt | awk '{print $8}' | head -n 2 | grep '[:alpha:]' Je nachdem, wie dein alias für 'ls' aussieht, müssen die Parameter noch geändert werden (wenn die ' um ls weg gelassen werden).
Empfohlene Beiträge
Erstelle ein Benutzerkonto oder melde Dich an, um zu kommentieren
Du musst ein Benutzerkonto haben, um einen Kommentar verfassen zu können
Benutzerkonto erstellen
Neues Benutzerkonto für unsere Community erstellen. Es ist einfach!
Neues Benutzerkonto erstellenAnmelden
Du hast bereits ein Benutzerkonto? Melde Dich hier an.
Jetzt anmelden