Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

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

Erstellungsdatum einer Datei per Batch auswerten?

Frage Entwicklung Batch & Shell

Mitglied: 10440

10440 (Level 1)

14.12.2005, aktualisiert 21.01.2010, 11126 Aufrufe, 2 Kommentare

Hallo Zusammen,

brauche mal wieder Hilfe bei einer Batchdatei.

Folgendes Szenario:

In unregelmäßigen Abständen werden große Dateien in Ordner A erstellt. Diese Dateien werden automatisch in Ordner B verschoben, damit diese dort weiterverarbeitet werden können. Dies geschieht mit einer einfachen Batchdatei die alle 5 Minuten aufgerufen wird.
Nun kann es natürlich vorkommen das beim Aufruf der Batchdatei eine Datei noch nicht vollständig im Ordner A erstellt worden ist und es beim bearbeiten im Ordner B zu einem Fehler kommt.
Meine Überlegung ist nun, vor dem verschieben in Ordner B zu Prüfen ob die Datei länger als 5 Minuten im Ordner A existiert und erst wenn dies bestätigt worden ist mit dem Verschieben
Anzufangen.
Leider ist es nicht möglich extra dafür ein Programm zu installieren so das mir nur die bescheidenen Mittel von Windows2000 bleiben.

Gibt es nun eine Möglichkeit das Erstellungsdatum / Zeit der Datei in einer Batch mit dem Systemdatum zu vergleichen?

Vielen Dank für eure Hilfe

Mandos
Mitglied: Biber
14.12.2005 um 11:56 Uhr
Moin Mandos,
>>Gibt es nun eine Möglichkeit das Erstellungsdatum / Zeit der Datei in einer Batch mit dem Systemdatum zu vergleichen?
Gibt es eine Möglichkeit, Deine Frage mit den bereits beantworteten Fragen zu diesem Thema abzugleichen? Eventuell mit Hilfe der Forumssuche?

Grüße Biber
Bitte warten ..
Mitglied: Biber
16.12.2005 um 19:15 Uhr
Moin Mandos,

ist ein bisschen aufwändig, da unterm CMD-Prompt keine Zeiteinheiten kleiner als 1 Tag sinnvoll als Parameter bei XCopy/NTBackup oder ähnlichen vorgesehen sind.
Und eben auch kein Datentyp "Datum" oder DateTime vorhanden ist.
Von daher ist die Frage "ist eine Datei älter als 5 Minuten" an den CLI schon etwas gemein.

Egal, eine kurze Skizze habe ich gemacht, um die Dateien vom gleichen/vom heutigen Tag zu vergleichen - wie in uralten Zeiten, indem ich vergleiche, wieviele Minuten seit Mitternacht vergangen sind. Minuten der Systemzeit %time% und Minuten der Datei-Speicherungs-Zeit.

Falls Dein Job rund um die Uhr/über Mitternacht hinweg läuft, dann musst Du Dir noch ein Kriterium ausdenken für alle Dateien, die nicht vom gleichen Tag sind.

sonstige Mimik:
Wechsel ins Quellverzeichnis, dort alle Dateien durchwackeln,
bei denen, die vom gleichen Tag sind, wird ":compareMinutes" aufgerufen.
Falls dann eine Minutendifferenz >= 5 Minuten errechnet wird, KÖNNTE verschoben werden.

01.
::--------getDiffInMinutes.bat 
02.
@echo off & setlocal 
03.
set "quellpfad=e:\" 
04.
Pushd %quellpfad% 
05.
REM Datetime-Delimiter sind Punkt, Doppelpunkt, SPACE bei einem Datum "16.12.2005 18:53" 
06.
set "dtdelims=.: " 
07.
for /f %%i in ('dir /b /A-d *.*') do ( 
08.
     Set "Filename=%%~fi"    
09.
     for /f "tokens=1-5 delims=%dtdelims%" %%a in ("%%~ti") do ( 
10.
       If [%%a.%%b.%%c]==[%date%] call :compareMinutes %%d %%e  
11.
12.
13.
Popd 
14.
goto :eof 
15.
~~~~~~~~~ 
16.
:compareMinutes 
17.
for /f "tokens=1-2 delims=:" %%i in ("%time%") do set /a "nowMinutes=(%%i*60)+%%j" 
18.
Echo %time:~0,5% ------ entspricht %nowMinutes% Minuten. 
19.
REM Heute sind um 18:50h 18*60+50Minuten vergangen... 
20.
set /a "FileMinutes=(%1*60) + %2" 
21.
Set /a "DiffMinutes=%nowMinutes%-%FileMinutes%" 
22.
IF %DiffMinutes% GEQ 5 echo verschiebe Datei %Filename% nach x:\yz... 
23.
goto :eof 
24.
::--------snapp getDiffInMinutes.bat
HTH Biber
Bitte warten ..
Ähnliche Inhalte
Batch & Shell
Datei nach Erstellungsdatum verschieben (2)

Frage von Kugelschreiber1 zum Thema Batch & Shell ...

Batch & Shell
gelöst Erstellungsdatum vor jede Zeile einer Textdatei schreiben (5)

Frage von freakonaleash zum Thema Batch & Shell ...

Batch & Shell
Batch zum verschieben von Ordnern anhand des Erstellungsdatums (4)

Frage von AcJoker zum Thema Batch & Shell ...

Batch & Shell
gelöst CSV Dateien auswerten mit Script (8)

Frage von Crank69 zum Thema Batch & Shell ...

Neue Wissensbeiträge
Viren und Trojaner

CNC-Fräsen von MECANUMERIC werden (ggf.) mit Viren, Trojanern, Würmern ausgeliefert

(4)

Erfahrungsbericht von anteNope zum Thema Viren und Trojaner ...

Windows 10

Windows 10: Erste Anmeldung Animation deaktivieren

(3)

Anleitung von alemanne21 zum Thema Windows 10 ...

Exchange Server

Mittels Batch-Script Exchange-Logs sammeln und archivieren

Anleitung von beidermachtvongreyscull zum Thema Exchange Server ...

Heiß diskutierte Inhalte
Verschlüsselung & Zertifikate
SSL Zertifikat für HTTPS (33)

Frage von Hendrik2586 zum Thema Verschlüsselung & Zertifikate ...

Grafikkarten & Monitore
24" oder 27" mit Full HD oder doch mehr Auflösung? (21)

Frage von brutzler zum Thema Grafikkarten & Monitore ...

Router & Routing
gelöst Linksys wrt1200ac v2 mit dd-wrt: keine vlan-einstellungen im GUI (15)

Frage von Pixi123 zum Thema Router & Routing ...

Netzwerke
Ip Adressenkonflikt bei Großfamilie (12)

Frage von gunter zum Thema Netzwerke ...