Praxistipp: Feststellen, ob alle Dateien mit einer Zahlenendung vorhanden sind

Die Anforderung: Ein Verzeichnis enthält viele Dateien, die zuvor (einzeln) aus dem Internet heruntergeladen wurde. Jede Datei endet mit einer aus drei Ziffern bestehenden Zahl, also z.B. Datei1.zip.001, Datei1.zip.002, Datei1.zip.003 usw. Da die Dateien alle per Mausklick aus einem per OneDrive Business (Sharepoint) freigegebenen Webverzeichnis heruntergeladen wurden, soll sichergestellt werden, dass tatsächlich alle Dateien heruntergeladen wurden. Dazu muss geprüft werden, ob alle Zahlen von 1..n am Ende des Dateinamens in der Zahlenfolge von 1..n enthalten sind.

Das ist natürlich eine ideale Gelegenheit, die eigenen PowerShell-Kenntnisse zu überprüfen.

Da in dem Befehl nicht nur eine Hashtable, sondern auch ein (Mini-) Regex vorkommen, ist die Schreibweise am Anfang vielleicht etwas speziell, aber wie immer ist sie eigentlich ganz einfach.

Das folgende Beispiel geht davon aus, dass sich im Verzeichnis F:\VIS 2020 Dateien mit den Endungen .001 bis .242 befinden. Sollte eine Datei fehlen, wird sie ausgegeben.

In der ersten Version meiner „genialen Idee“ hatte ich noch einen Denkfehler eingebaut. Jetzt sollte das Ergebnis aber stimmen und es werden nur die Nummern ausgegeben, für die es keine Datei gibt.

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.

Diese Website verwendet Akismet, um Spam zu reduzieren. Erfahre mehr darüber, wie deine Kommentardaten verarbeitet werden.