как скопировать файлы, которые имеют слишком длинный путь в windows?

<p>мне нужно сделать резервные копии некоторых файлов на сетевом ресурсе. однако мне нужно скопировать эти файлы на мой локальный диск перед записью дисков, потому что эти файлы могут быть использованы. некоторые файлы не будут скопированы, потому что путь к файлу слишком длинный. есть ли обходной путь, кроме изменения структуры файла?</p>

<p>максимальная длина пути составляет 260 в windows vista/7. я могу рекомендовать три решения:</p><ul> <li>(если путь слишком длинный) сначала скопируйте папку на верхние уровни в windows explorer, а затем переместите ее на локальный компьютер</li> <li>(если имена файлов слишком длинные) сначала попробуйте zip/rar/7z с помощью приложения для архивирования, а затем скопируйте файл архива на локальный компьютер и затем извлеките содержимое.</li> <li>используйте сторонние приложения.</li> </ul><p>все эти предположения предполагают, что у вас есть какой-то доступ на запись в общей папке/компьютере в сети. если вы не можете сделать что-либо из этого, вам может понадобиться помощь вашего администратора.</p>

<pre><code>robocopy /e source destination </code></pre><p> <a href="http://ss64.com/nt/robocopy.html">надежное копирование файлов и папок</a> .</p><p><strong> windows 7 и выше: </strong><br> robocopy xp027 - это стандартная команда для windows 7 и выше.</p><p><strong> nt 4/windows 2000: </strong><br> инструменты комплекта ресурсов windows server 2003 включают robocopy xp010,<br> , который может быть запущен в nt 4/windows 2000.</p><p><strong> windows 95 или nt 3.5: </strong><br> robocopy не работает в windows 95 или nt 3.5. (robocopy - это приложение unicode).</p><p><strong> временное решение для windows 95 или nt 3.5: </strong><br> графический интерфейс microsoft robocopy установит robocopy xp026 в c:\windows\system32,<br> <em>эта версия может работать на более старых ос,</em><br> и включает в себя некоторые функции из xp027 (/ bytes), но имеет совершенно неработающую обработку уровня ошибок.</p><p>robocopy 'jobs' и опция 'monitor source' предоставляют альтернативу настройке запланированного задания для запуска пакетного файла с помощью команды robocopy.</p>

<p>вы можете получить доступ к длинам пути до ~ 32 тыс. символов, используя префикс <code>\\?\</code>.</p><pre><code>\\?\c:\some\really\long\path </code></pre><p>это работает из командной строки и любых других программ, использующих методы win32 unicode api, включая приложения .net. для этого требуется файловая система, которая поддерживает длинные пути (например, ntfs), но если у вас есть проблемы с длинными путями, это само собой разумеющееся.</p><p>обратите внимание, что определенные приложения и<strong> многие нативные инструменты (например, explorer) будут иметь проблемы с этими путями </strong>поэтому используйте это, чтобы вырваться из дыры, а не в одну.</p>

<p> <a href="https://ipmsg.org/tools/fastcopy.html.en">fastcopy</a> - проект с открытым исходным кодом на языке c, написанный shirouzu hiroaki и являющийся «самым быстрым программным обеспечением для копирования/удаления в windows». он поддерживает unicode и более max\_path (260 символов) имен файлов.</p><p>если у вас есть сотни путей, которые слишком длинны для исправления, используйте " <a href="https://pathtoolongautofixer.blogspot.com">path tool long auto fixer</a> " tool</p>