Wir haben einen Prozess, der DIR
auf mehreren Ordnern ausgeführt wird, um zu überprüfen, ob die richtigen Dokumente von einem anderen Prozess generiert wurden.
In jedem der Zielverzeichnisse verwenden wir diesen Befehl:
dir /A:-D "x:\name of document\_archive\YYYY\MONTH\dd.mm.yyyy\" /b
Für eines der Verzeichnisse erhalten wir eine falsche Nummer, weilDaumen.dbwird gezählt.
Wie kann ich den DIR-Befehl ändern (der eigentlich ausgeführt wird mitxp_cmdshellvon SQL Server), um zu ignorierenDaumen.db?
oder muss ich diese Dateien tatsächlich entfernen, wie erklärthier von PeterNetLive?
Antwort1
Sie können die Ausgabe des dir-Befehls umleiten, findstr
um die Zeilen „Thumbs.db“ zu filtern. Das Flag /V
zeigt nur nicht übereinstimmende Zeilen an und /I
macht die Suche unabhängig von Groß- und Kleinschreibung. Der vollständige Befehl lautet:
dir /A:-D /B "x:\...\" | findstr /V /I "^Thumbs.db$"