パスが長すぎるためファイルを削除できません

パスが長すぎるためファイルを削除できません

削除したいファイルを含むディレクトリがあります。ただし、ファイル名が長すぎます。

> Remove-Item -Recurse target
Remove-Item : The specified path, file name, or both are too long. The fully qualified
file name must be less than 260 characters, and the directory name must be less than
248 characters.

Windows エクスプローラーでもshift+を使用して削除することはできません。delete

スクリーンショット

名前が長すぎるため、ファイルを移動することもできません。ファイルを削除する方法はありますか? Windows 8.1 を使用しています。このようなファイルがそもそも私のドライブにどのようにして存在するのか、また、エクスプローラーと PowerShell で削除できない理由を説明していただければ、さらにポイントが上がります。

答え1

それは、DeleteFile()およびパスは、 のような長いパス表記法を使用して指定します\\?\C:\path\to\your\file.class

リンクされた MSDN ページから:

この関数の ANSI バージョンでは、名前はMAX_PATH文字に制限されています。この制限を 32,767 ワイド文字に拡張するには、関数の Unicode バージョンを呼び出して"\\?\"パスの先頭に追加します。詳細については、ファイルの命名

関連情報