
私は、Windows コードの展開に UrbanCode Deploy を使用しており、フォルダー内に '.' フォルダーを作成しました。PowerShell の項目削除コマンドとフラグをすべて試し、robocopy の移動/削除を試して別の場所にコピーし、chkdsk を実行しましたが、エラーは報告されませんでした。
手動で削除すると、「エラー 0x80070091: ディレクトリが空ではありません」というメッセージが表示されます。
PowerShell で削除しようとすると、「Get-ChildItem: パスが有効な形式ではありません」というメッセージが表示されます。
'.' フォルダを開くと、'ls -l ./' を実行した場合と同じになります。さらに深く開くと、'このファイル パスは利用できない場所を参照しています。' というエラーが表示されます。
このフォルダを削除する方法はありますか?
答え1
ここで解決策を見つけました。https://superuser.com/questions/78434/how-to-delete-directories-with-path-names-too-long-for-normal-delete
7zip で親ディレクトリを開くと、フォルダ上で Shift + Delete を使用してディレクトリを削除できました。これにより、ファイル エクスプローラーで処理するには長すぎる再帰的に作成されたフォルダや、不正なパス名を削除できるようです。
@frupfrup さん、ありがとうございます。Google で「windows long path remover」と検索したら、スーパーユーザーのリンクにたどり着きました。また、他のアイデアを提供してくれた @Kernal Sterns さんにも感謝します。
答え2
現在のディレクトリから.bat
削除するファイルは次のとおりです。.
@echo off
for %%* in (.) do set CurrDirName=%%~nx*
cd ..
rmdir /s %CurrDirName%
これを真剣に受け止めている人は、このコマンドがむしろ破壊的。
答え3
数か月前にも同様の問題がありました。Powershell / CMD やその他の Windows 標準機能もすべて試しましたが、何も役に立ちませんでした。
少なくとも同僚は、「Long path remover」(「Thorsten Eggeling」提供) というサードパーティ ツールでこれを試しました。このツールは、準拠していない名前のフォルダーも削除できます。しかし、インターネット上ではもう見つかりません... おそらく、あなたはできるでしょうし、役立つかもしれない同様のツールで試してみることもできます。他の削除ツールでも削除できるかもしれません。
編集: しかし、このフォルダを削除する Windows 統合型の方法がないのは非常に残念です... 少なくとも簡単な方法はありません... おそらく他の誰かが良いアイデアを持っているでしょう。