4

Я помогаю своему дяде перенести все его фотографии с внутренних и внешних жестких дисков машин Windows на его недавно купленный NAS, и мы натолкнулись на небольшую проблему (с «только» 3000 файлами ...), которая называется «Имя файла / папка». имя слишком длинное для копирования ». Так.. Я ищу приложение, которое может найти все файлы с определенной длиной имени для меня.

Проводник Windows может выполнять поиск по имени, типу, размеру и т.д., Но, насколько я могу судить, он не может выполнять поиск по длине имени. Поэтому я ищу приложение, которое может это сделать.

Примечание. Это может быть команда подсказки, при условии, что результат может быть просто экспортирован.


Бонус! Также применимо в командной строке: изменение имени файла / папки из того же приложения! Тире, точки и пробелы на самом деле не нужны и могут привести к более коротким именам, таким образом, возможно, возможно передать!

2 ответа2

5

Windows Explorer, а также приложения .NET Framework имеют проблемы с путями, длина которых превышает 260 символов (см. Здесь: https://stackoverflow.com/questions/1880321/why-does-the-260-character-path-length-limit- существовать в окнах)

Чтобы обойти это, вы можете просто сократить путь путем сопоставления его с буквой диска с 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 символов. Это также работает с путями UNC на вашем NAS.

Диск виден в проводнике Windows, поэтому вам нужно только открыть командную строку, чтобы сопоставить диск. Он будет автоматически отключен при выходе / перезагрузке компьютера.

2

Я сокращу твою проблему.

Ваши спецификации файлов (комбинация имени файла 8.3 и имени папки) превышают ограничение в 255 символов. Вероятно, это связано с глубоко вложенными папками.

Для файлов, которые нельзя переместить, переместите их папки в корень диска, а затем выполните операцию переноса. Теперь должно работать.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .