Hinweis: Das Forum wird geschlossen! Neue Registrierungen sind nicht mehr möglich!

 Zurück zu Pro-Linux   Foren-Übersicht   FAQ     Suchen    Mitgliederliste
or warn in perl

 
Neuen Beitrag schreiben   Auf Beitrag antworten    Pro-Linux Foren-Übersicht -> Programmieren - Allgemein
Vorheriges Thema anzeigen :: Nächstes Thema anzeigen  
Autor Nachricht
ottto



Anmeldungsdatum: 09.09.2004
Beiträge: 176

BeitragVerfasst am: 25. Aug 2005 7:29   Titel: or warn in perl

hallo,
ich möchte mit einem perlscript Dateien in verschiedenen Verzeichnissen löschen.
Funktioniert mit :
$verz = pfad + /*
unlink glob $verz or warn " + + + FEHLER + + + Verzeichnisinhalt $verz geht nicht zu loeschen $!\n";

Da ich das Script zeitgesteuert (nachts) laufen lassen möchte, brauche ich die Fehlermeldung in einer logdatei.
Wie geht das zu machen???
ottto
 
Benutzer-Profile anzeigen Private Nachricht senden

kfutter
Gast





BeitragVerfasst am: 25. Aug 2005 9:15   Titel:

> brauche ich die Fehlermeldung in einer logdatei. Wie geht das zu machen???

indem du die ausgabe statt als warning auszugeben in eine datei schreibst (open ( my $fh, ">datei" ) or die "..."; print $fh "FEHLER etc"; )
oder beim aufruf des scripts stderr in eine datei umleitest.
 

jochen
prolinux-forum-admin


Anmeldungsdatum: 14.01.2000
Beiträge: 699
Wohnort: Jülich

BeitragVerfasst am: 26. Aug 2005 7:53   Titel:

Die Ausgaben von cronjobs werden an den Eigentümer gemailt; Du hättest also jeden Morgen Post von cron mit dem Output Deines Skripts im Eingang. Ich persönlich habe solche Meldungen lieber in der Datei /var/log/messages. Das kann man über das Kommando "logger" erreichen:
Code:
meinskript.pl 2>&1 | logger -p local2.info -t meinskript
Das "2>&1" lenkt die Fehlerausgabe mit in die Pipe um. logger schickt diese Meldungen mit der Kategorie local2.info an den syslog-Daemon und taggt alle Nachrichten mit dem Stichwort "meinskript". So kann man beispielsweise mittels "grep meinskript /var/log/messages | tail" die letzten Meldungen dieses Skriptes aus der /var/log/messages extrahieren.

perl bietet *unter Garantie* auch Module, um direkt an den syslogd zu loggern. Dafür müsstest Du aber selbst mal auf CPAN recherchieren.

Jochen
_________________
Die grösste Lüge der EDV? "Mal eben..."
 
Benutzer-Profile anzeigen Private Nachricht senden Website dieses Benutzers besuchen

ottto



Anmeldungsdatum: 09.09.2004
Beiträge: 176

BeitragVerfasst am: 26. Aug 2005 9:19   Titel:

Hallo kfutter, hallo jochen,

vielen Dank für die Lösungswege!!!
Ich hab die Umleitung der stderr genutzt. funktioniert schon produktiv.


Danke
ottto
 
Benutzer-Profile anzeigen Private Nachricht senden

Beiträge vom vorherigen Thema anzeigen:   
     Pro-Linux Foren-Übersicht -> Programmieren - Allgemein Alle Zeiten sind GMT + 1 Stunde
Seite 1 von 1

 
Gehen Sie zu:  

Powered by phpBB © phpBB Group
pro_linux Theme © 2004 by Mandaxy