brause1701
Goto Top

Ordner mit Zeitstempel auswerten und ggf. weitere Aktion ausführen (Batch, PowerShell, ggf. R)

Hallo liebe Experten,

ich habe das folgende Problem: Ich möchte die aktuellen Daten aus bestimmten Verzeichnissen weiterverarbeiten. Zuvor soll aber ermittelt werden, ob neuere Daten überhaupt vorhanden sind! Beispiel:

Datensatz_A mit Unterverzeichnissen: "20150627", "20160819", "data"
Datensatz_B mit Unterverzeichnissen: "20140813", "20171204", "data"
Datensatz_C (...)
(...)

Die zu verwendenden Daten liegen jeweils im "data"-Verzeichnis und werden mit anderen Scripten weiterverarbeitet.

Ich würde mit einem manuell eingegebenen Datum starten. Das Script soll dann die Ordner auswerten und nur dann die weiterführenden Scripte starten wenn jüngere Zeitstempel (siehe Datensatz_A bzw. _B) vorhanden sind. Ansonsten soll mit dem nächsten Datensatz weitergemacht werden.

Am Ende soll die manuell gesetzte Datums-Variable mit dem Datum der letzten Ausführung überschrieben werden und z.B. über einen Timeout in einer Woche erneut beginnen.

Kernfrage ist, wie ich den Abgleich der Zeitstempel-Ordner und einem manuell oder auch automatisch via date erzegtem Datum hin bekomme.


Ideen? Zur Verfügung stehen mir Batch, PowerShell und theoretisch auch R (falls es hilfreich wäre). Vielen Dank vorab!!

Content-ID: 356971

Url: https://administrator.de/contentid/356971

Ausgedruckt am: 19.11.2024 um 07:11 Uhr

134464
134464 04.12.2017 aktualisiert um 16:56:36 Uhr
Goto Top
Das hier zeigt dir alle Datensatzordner in denen es einen Unterordner mit einem Datum im Namen gibt der jünger ist als das angegebene.
$mydate = get-date (Read-Host 'Bitte Datum eingeben [dd.mm.yyyy]')  
gci "C:\Datensätze\*\*" -Directory | ?{$_.Name -match '^\d{8}$'} | ?{[dateTime]::ParseExact($_.Name,'yyyyMMdd',[cultureinfo]::CurrentCulture) -gt $mydate} | %{$_.Directory.Parent.Fullname} | select -Unique  
Ich gehe im Skript von folgender Ordnerstruktur aus:
C:\Datensätze\
       |- Datensatz_A\ 
                |
                 ---  20150627\
                |
                 ---  20160819\
                |
                 ---  data\
       |- Datensatz_B\
                |
                 ---  20150627\
                |
                 ---  20160819\
                |
                 ---  data\
wenn jüngere Zeitstempel
Das interpretiere ich im Skript als : Das Datum des Ordners (aus dem Ordnernamen gebildet) ist jünger als das beim Start angegebene Datum.

Hoffe das habe ich so richtig interpretiert.

Viel Spaß damit ...
brause1701
brause1701 08.12.2017 um 18:06:55 Uhr
Goto Top
Hallo bitcoin,

vielen Dank! Ich schaue mal ob ich damit zum Ziel komme. Wenn ich erfolgreich war, schließe ich die Frage,. Ansonsten melde ich mich noch mal.

Gruß,
Brause