Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

gelöst Perl - mit Datum rechnen und Ordner selektieren

Mitglied: xplayer2005

xplayer2005 (Level 1) - Jetzt verbinden

14.11.2006, aktualisiert 16.11.2006, 11019 Aufrufe, 8 Kommentare

Hallo,

ich lese das Datum aus dem Ordnernamen ein, jetzt soll geprüft werden ob das eingelesene Datum älter als 5 tage ist..

wie mache ich das?



mein Problem ist das ich nicht weis wie ich in Perl mit dem Datum rechne..


für Ideen bedanke ich mich vorab
Mitglied: 6890
14.11.2006 um 12:52 Uhr
hi,

also einfachste methode ist die:
snippet
01.
# in dieser var stehen die sekunden seit 01.01.1970
02.
my $time=time();
03.

04.
# hier stehen die 5 tage in sekunden (86400 hat der tag * 5 tage)
05.
my $alter = 86400 * 5;
06.

07.
# hier steh das maximale alter wie alt dateien sein dürfen (jetzt - 5 tage)
08.
my $maxAlter = $time - $alter;
snippet end

ansonsten gibt es noch das modul Date::Calc. mit dem kannst du auch datumsberechnungen machen.

http://search.cpan.org/~stbey/Date-Calc-5.4/Calc.pod

mfg godlike P
Bitte warten ..
Mitglied: todason
14.11.2006 um 12:53 Uhr
Hallo,
anhand dieses Beispiels kannst du erkennen wie Perl das Datum verarbeitet:
sub timestamp {

(my $sec,my $min,my $hour,my $mday,my $mon,my $year) = localtime(time); #Systemzeit auslesen
$year += 1900; #Jahr zählt von 1970
$mon +=1; #Monat 0-11
my $stamp = sprintf("%02d:%02d:%02d-%02d.%02d.%04d",$hour,$min,$sec,$mday,$mon,$year);

return $stamp;
}

Gruss
Todason
Bitte warten ..
Mitglied: xplayer2005
14.11.2006 um 15:25 Uhr
ja und wie mach ich aus meinem eingelesenem Datum - 29.10.2006 - so eine Sekunden Zahl damit ich die beiden vergleichen kann??

das war mein eigentliches Problem
Bitte warten ..
Mitglied: xplayer2005
14.11.2006 um 15:36 Uhr
zur verdeutlichung. is vielleicht auch einfacher so...

wenn ich ne datei mit -M "Datei"; aufrufe bekomm ich ja das alter dieser in Tagen zurück.

was ich jetz gerne berechnen würd ist wie "alt" z.B. ein Ordner ist der 12.10.2006 heist bzw. aus dem ich 12.10.2006 ausgelesen hab.

ich stell mir das so vor das ich irgentwie den Ausdruck "12.10.2006" in Sekunden umgerechnet bekomm (denke einfach rechenen wird ned gehn wegen den schaltjahren...)
dann von dem heutigen Datum/Sekundenzahl abziehe und dann entsprechend ein Ergebniss bekomme, in Tagen oder Sekunden is dann egal.. und zu guter letzt vergleiche ob der Ordner/das eingelesene Datum jetzt älter is als 5 Tage oder nicht...


Danke.
Bitte warten ..
Mitglied: xplayer2005
14.11.2006 um 15:36 Uhr
zur verdeutlichung. is vielleicht auch einfacher so...

wenn ich ne datei mit -M "Datei"; aufrufe bekomm ich ja das alter dieser in Tagen zurück.

was ich jetz gerne berechnen würd ist wie "alt" z.B. ein Ordner ist der 12.10.2006 heist bzw. aus dem ich 12.10.2006 ausgelesen hab.

ich stell mir das so vor das ich irgentwie den Ausdruck "12.10.2006" in Sekunden umgerechnet bekomm (denke einfach rechenen wird ned gehn wegen den schaltjahren...)
dann von dem heutigen Datum/Sekundenzahl abziehe und dann entsprechend ein Ergebniss bekomme, in Tagen oder Sekunden is dann egal.. und zu guter letzt vergleiche ob der Ordner/das eingelesene Datum jetzt älter is als 5 Tage oder nicht...


Danke.
Bitte warten ..
Mitglied: 6890
15.11.2006 um 15:05 Uhr
mit
01.
my $alterInSekunden = (stat(datei oder ordner))[9];
bekommst du das alter seit der letzten änderung in sekunden zurückgegeben...

mfg
Bitte warten ..
Mitglied: xplayer2005
16.11.2006 um 12:54 Uhr
ne das war nicht mein Problem.

ich will ja nicht das alter der Letzten Änderung sondern das eingelesende datum in sekunden umwandeln

--habs aber mitlerweile selbst rausbekommen:

---
use Time::Local;

timelocal(0,0,0,$extDay,$extMon-1,$extYear) #liefert das alter in secunden
--

die ersten drei werte sind secunde,Minute,Stunde, da ich die nciht einlese setze ich die auf 0

die nächsten drei sind die eingelesenen Variablen extrahierterTag, extrahierterMonat (in Perl wie immer -1 nicht vergessen), extrahiertesJahr



Trozdem danke für die zahlreichen Antworten
Bitte warten ..
Ähnliche Inhalte
Perl

Perl Text Datei in Excel einlesen Spalte als Datum formatieren

Frage von bluepythonPerl

Hallo, in einem Perl-Script starte ich eine Datenbankabfrage, das Ergebniss wird mir in eine Textdatei geschrieben. Diese Textdatei wird ...

Perl

Perl Scripting routen

gelöst Frage von fredo788Perl13 Kommentare

Hallo, ich habe Probleme mit einem Perl Script. Anmerken muss ich, dass ich sehr unerfahren mit Perl bin. Auf ...

Perl

Perl hat heute Geburtstag: 30 Jahre Perl: Lange Gesichter zum Geburtstag

Information von Penny.CilinPerl8 Kommentare

Hallo, auch wenn es wenige wissen und noch weniger Leute es nutzen. Perl hat heute Geburtstag. 30 Jahre Perl ...

PHP

Datum Rechner

gelöst Frage von michi-ffmPHP6 Kommentare

Hey Leute, evtl kann mir jemand helfen und mir folgenden Skript erklären und sagen wie ich das Jahr dazubekommen ...

Neue Wissensbeiträge
Windows Mobile

Support für Windows Mobile endet im Dezember 2019

Information von transocean vor 13 StundenWindows Mobile

Moin, Microsoft empfiehlt als Alternative den Umstieg auf iOS oder Android, wie man hier lesen kann. Gruß Uwe

Internet

Kommentar: Bundesregierung erwägt Ausschluss von Huawei im 5G-Netz - Unsere Presse wird immer sensationsgieriger

Information von Frank vor 2 TagenInternet5 Kommentare

Hier mal wieder ein schönes Beispiel für fehlgeleiteten Journalismus und Politik zugleich. Da werden aus Gerüchten plötzlich Fakten, da ...

Windows 10

Netzwerk-Bug in allen Windows 10-Versionen durch Januar 2019-Updates

Information von kgborn vor 2 TagenWindows 101 Kommentar

Nur ein kurzer Hinweis für Admins, die Windows 10-Clients im Portfolio haben. Mit den Updates vom 8. Januar 2019 ...

Windows 10

Windows 10 V1809: Rollout ist gestartet - kommt per Windows Update

Information von kgborn vor 3 TagenWindows 102 Kommentare

Eine kurze Information für die Admins, die Windows 10 im Programm haben. Microsoft hat die letzte Baustelle (die Inkompatibilität ...

Heiß diskutierte Inhalte
TK-Netze & Geräte
TAPI auf einem Win2016Server installieren und einrichten
Frage von wstabelTK-Netze & Geräte32 Kommentare

Hallo liebe Admins, ich habe folgende Situation: 1 Windows Server 2016 Standard als DC 1 SNOM 710 IP-Telefon 1 ...

Off Topic
Darf ich ein Forum erstellen das Produkte eines Herstellers betrifft?
Frage von cyberwallOff Topic9 Kommentare

Hallo Community, ich habe da eine "rechtliche" bzw. allgemeine Frage zum erstellen von Foren. Darf ich als "normale Person" ...

DNS
SFTP über DynDNS nicht OK - über ext. IP funktioniert es
Frage von C.MorgensternDNS8 Kommentare

Hallo zusammen! Ich habe Probleme beim SFTP Zugriff auf eine Linux Maschine vom WAN aus über eine DynDNS Adresse. ...

Router & Routing
Unbekannte IPv4 Adresse im Routerprotokoll(Portweiterleitung)
gelöst Frage von tklustigRouter & Routing7 Kommentare

Hallo Leute, folgender Screenshot(ScanVersusPortForwarding.jpg) zeigt die im Routerprotokoll aufgezeigten Portweiterleitungen und alle von einem IPScanner eruierten IPv4 Adressen in ...