Ich habe ein Verzeichnis mit Unterordnern, die Dateien mit sehr unterschiedlichen Namen von vielen verschiedenen Benutzern enthalten, sodass sie nicht sehr einheitlich benannt sind. Ich verschiebe dieses Verzeichnis auf eine SharePoint-Site, die bestimmte Zeichen als Dateinamen nicht zulässt, da es sich bei diesen Zeichen um reservierte Zeichen handelt.
Invalid chars: " # % & * : < > ? \ / { | } ~
Referenziert von: http://www.thesug.org/mossasaurus/Wiki%20Pages/SharePoint%20Invalid%20Characters.aspx
Wie Sie sehen, gibt es viele Zeichen, nach denen ich suchen müsste. Ich könnte die vielen Ordner und Hunderte von Dateien per Augenmaß nach jedem ungültigen Zeichen durchsuchen, aber gibt es eine schnellere Möglichkeit, den Hauptordner, der die Unterordner und deren Inhalt enthält, nach jedem einzelnen dieser Zeichen zu durchsuchen, sodass nur die Ordner und Dateien mit den fehlerhaften Zeichen angezeigt werden?
Vielen Dank für Ihre Zeit,
Antwort1
Das Folgende sollte für Sie funktionieren:
dir *#* *%* *^&* *{* *}* *~* /s /b > bad_file_names.txt
Dadurch sollten die Dateien mit ungültigen Zeichen erkannt und in einer übersichtlichen kleinen Textdateiliste abgelegt werden. Ich habe die Zeichen weggelassen, die unter Windows bereits ungültig sein sollten (ich gehe davon aus, dass Sie mit dem SharePoint-Server Windows verwenden).
Antwort2
Versuchen Sie etwas wieAgent RansackoderWinGrepum nach dem regulären Ausdrucksmuster zu suchen:
["#%&*:<>?\/{|}~]