web-dev-qa-db-ja.com

特定の名前の長さのファイルまたはフォルダーを見つけるにはどうすればよいですか?

私は叔父がすべての写真画像をWindowsマシンの内部および外部ハードドライブから新しく購入したNASに転送するのを手伝っていますが、小さな問題に遭遇しました('のみに発生) '3.000ファイル..)、'ファイル名/フォルダ名が長すぎてコピーできません '。だから..特定の名前の長さのすべてのファイルを見つけることができるアプリケーションを探しています。

Windowsエクスプローラーは、名前、種類、サイズなどで検索できますが、私が知る限り、名前の長さで検索することはできません。そのため、私はそうすることができるアプリケーションを探しています。

注:結果を単純にエクスポートできる場合、これはプロンプトコマンドである可能性があります。


ボーナス!コマンドプロンプトにも適用できます:同じアプリケーションからファイル/フォルダー名を変更します!ダッシュ、ドット、スペースは実際には不要であり、名前が短くなる可能性があるため、転送できる可能性があります。

4

Windowsエクスプローラーと.NETFrameworkアプリケーションには、260文字を超えるパスに問題があります(ここを参照してください: https://stackoverflow.com/questions/1880321/why-does-the-260-character-path- length-limit-exist-in-windows

これを回避するためにできることは、次のようにsubst.exeを使用してドライブ文字にマップすることにより、パスを短くすることです。

subst.exe <DriveLetter>: <super long path without trailing backslash>

例:

subst.exe A: C:\users\%username%\appdata\local\temp

これは私の超長い道のりをマッピングします(C:\users\%username%\appdata\local\tempこの場合)ドライブ文字A:したがって、パスの長さを20文字以上短縮します。これは、NASのUNCパスでも機能します。

ドライブはWindowsエクスプローラーに表示されるため、コマンドラインを開くだけでドライブをマップできます。 PCをログオフ/再起動すると、自動的にマップが解除されます。

5
megamorf

私はあなたの問題を近づけます。

ファイル仕様(8.3ファイル名とフォルダー名の組み合わせ)が255文字の制限を超えています。これは、深くネストされたフォルダが原因である可能性があります。

移動できないファイルについては、フォルダをドライブのルートに移動してから、転送操作を行ってください。これで動作するはずです。

1
RockPaperLizard