
ディレクトリにはサブフォルダがあり、その中にはさまざまなユーザーが作成した非常に多様な名前のファイルが含まれているため、名前の一貫性があまりありません。このディレクトリを SharePoint サイトに移動していますが、このサイトでは、特定の文字が予約文字として設計されているため、ファイル名として使用できません。
Invalid chars: " # % & * : < > ? \ / { | } ~
参照元: http://www.thesug.org/mossasaurus/Wiki%20Pages/SharePoint%20Invalid%20Characters.aspx
ご覧のとおり、探さなければならない文字がたくさんあります。多数のフォルダーと数百のファイルを調べて、無効な文字を目で探して探すこともできますが、サブフォルダーとその内容を含むマスターフォルダーでこれらの文字のそれぞれまたはすべてを検索して、無効な文字を含むフォルダーとファイルだけを表示するより速い方法はありますか?
お時間をいただきありがとうございました。
答え1
これでうまくいくはずです:
dir *#* *%* *^&* *{* *}* *~* /s /b > bad_file_names.txt
これにより、不正な文字を含むファイルが取得され、簡潔なテキスト ファイル リストにダンプされます。Windows で既に無効であるはずの文字は省略しました (SharePoint サーバーで Windows を実行していると想定しています)。
答え2
次のようなことを試してみてくださいエージェント・ランサックまたはウィングレップ正規表現パターンを検索するには:
["#%&*:<>?\/{|}~]