Каталог расширений

Популярные теги

3gp       avi       fb2       jpg       mp3       pdf      

Как удалить файл с длинным именем


Как удалить файл или папку с длинным названием, если Windows не даёт этого сделать!

В данной статье я хочу поделиться с вами парочкой способов решений одной проблемы в Windows, с которой уже несколько раз сталкивался сам. Проблема заключается в том, что Windows не даёт возможность удалить файл или папку с очень длинным названием, а конкретно — путь к которым слишком длинный и превышает размер в 260 символов. При попытке удалить такой файл или папку, вы получите сообщение: «Файловая система не поддерживает такие длинные имена исходных файлов». Такая ситуация может возникнуть, например, тогда, когда у вас сложная структура папок в виде большой «матрёшки». К примеру, в одной папке есть другая папка, в ней в свою очередь ещё одна папка, в ней ещё одна и так далее. И в самом конце этого пути, в последней папке лежит нужный файл. Так вот, если в сумме все названия этих папок по количеству символов превысят 260, то в итоге система не даст вам удалить одну из папок или сразу несколько в самом конце этой «матрёшки» :) А если проблема конснулась файла, только вы его и открыть не сможете, переименовать или даже скопировать. Проще говоря, такой файл будет недоступен!

Вот пример структуры папок, которую я назвал «большой матрёшкой»:


как удалить папку с длинным названием

Как видим, на диске «D» (Данные) есть исходная папка видео, в ней папка «Фильмы», в ней «Всё что нужно для просмотра фильмов» и далее таким же образом папка в папке. При этом многие папки имеют длинные названия названия — больше 10-15 символов, что в сумме даст объём символов во всех названиях больше 260. И если в конце такой «матрёшки» будет лежать файлик, то может получиться так, что работать с ним вы не сможете… Иногда сама система не даёт создать в конечном итоге папку или файл превышающий допустимое количество символов, но иногда почему-то такое происходит.

В начале для новичков поясню, что такое путь к файлу и папке. Путь – это так называемый адрес в компьютере, по которому располагается файл или папка. Например, файл под названием «Мой файл.txt» лежит на локальном диске D: в папке «Документы». Тогда путь к этому файлу будет выглядеть так:

D:\Документы\Мой файл.txt

Или, например, вот так будет выглядеть путь из примера выше, где я показал сложную структуру папок.

D:\Видео\Мои фильмы\Всё что нужно для просмотра фильмов\Программы для просмотра фильмов\Как открывать фильмы MP4\Список фильмов-примеров MP4\Перечень программ для открытия MP4\Что нельзя делать при открытии файлов MP4

Как видно, количество символов в пути выше велико и не исключено то, что в конце будет лежать файл или папка с длинным названием, который вы не сможете удалить.

При попытке удалить файл с длинным названием пути к нему, вы получите окно с ошибкой такого рода:


как удалить папку с длинным названием

Я попробовал искусственно воссоздать проблему и вот что у меня получилось.

На диске «D» создал папку коротким именем «1» и в неё поместил файл с очень длинным названием. Вот пример:


как удалить папку с длинным названием

Теперь я ту папку «1» переименовываю тоже в какое-то очень длинное название, например:


как удалить папку с длинным названием

Что интересно, Windows свободно даёт переименовать папку вот в такое длинное название, несмотря на то, что количество символов в названии этой папки + названии файла уже превышает 260! Ну и после такого вот переименования папки в длинное название, я уже не могу удалить файл, расположенный в ней и получаю ошибку, показанную выше на изображении.

Или вот ещё пример… Я обслуживаю сайт Московского приборостроительного техникума, в котором ранее работал на полную ставку и иногда для тестирования каких-то новых «плюшек» для сайта использую копию сайта на своём компьютере. А то вдруг я что-то нехорошее установлю и сайт на хостинге умрёт? :) А так я у себя на компьютере проверяю и если всё в порядке, то уже настраиваю на реальном сайте, расположенном на хостинге. Так вот, один раз я перенёс себе с хостинга весь сайт чтобы протестировать одну вещь и после того как закончил работать, решил удалить с компьютера папку с сайтом. Ведь весит она порядке 6 Гб. Сайт удалился весь, кроме ряда папок. Я начал смотреть и увидел, что не удалились те папки, которые содержали в себе файл с длиннющим названием в виде иероглифов:


как удалить папку с длинным названием

Попытался ещё раз удалить этот файл с длинным названием и увидел туже ошибку, о которой выше упоминал. Попробовал переименовать, тоже не получается. Ну и пришлось думать над тем, как проблему решить.

Как решить проблему удаления папки / файла с длинным названием пути!

Я пробовал 2 способа как можно удалить папку / файл с длинным названием в пути к ним. Оба они технически не сложные (особенное 1-й), поэтому, думаю, сможет справиться новичок если выполнит всё точно также как я показываю:

  1. Переименовать несколько папок в пути к файлу в более короткое название. Это самое простейшее решение, которое уже должно многим помочь! Предположим у вас в папке с очень длинным названием лежит файл, который вы не можете удалить, открыть, скопировать, да и вообще работать с ним не можете.

    Тогда попробуйте просто переименовать папку, в которой лежит файл с длинным названием, например, в «1». Вернусь к одному из примеров выше. Вот имеется папка с длинным названием:


    как удалить папку с длинным названием

    Переименовываю через стандартный проводник Windows название той папки в «1» и вот как теперь выглядит путь к файлу:


    как удалить папку с длинным названием

    Теперь, с файлом можно спокойно работать, система даст его открыть, переименовать и удалить.

    Если же у вас длинное дерево папок, т.е. как матрёшка, в одной папке другая, в ней ещё, потом ещё, то переименовывать начинайте с самой первой папки из этой матрёшки. Не с последней по списку, а с первой!

  2. Может быть так, что папок огромное количество и переименовать какие-то из них не получится из-за той же ошибки или это займёт у вас много времени. В таком случае предлагаю второй способ.

    Способ заключается в том, что вы можете взять какую-то папку, например, в середине общего дерева и подключить её в виде виртуального диска. Виртуальный диск – это то, что напоминает нам обычный локальный диск, но который просто привязывается к определённой папке, например, для быстрого взаимодействия с ней.

    Допустим у вас есть примерно такой вот длинный путь:

    D:\Видео\Мои фильмы\Всё что нужно для просмотра фильмов\Программы для просмотра фильмов\Как открывать фильмы MP4\Список фильмов-примеров MP4\Перечень программ для открытия MP4\Что нельзя делать при открытии файлов MP4

    Предположим, что в самой последней папке у нас лежит какой-то проблемный файл, с которым мы не можем работать, поскольку путь к нему, как видим, весьма приличной длинны :)

    Мы можем взять и подключить одну из папок с длинным названием в середине пути в качестве виртуального диска. Пусть это будет папка «Программы для просмотра фильмов».

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

    Открыть её можно через поиск Windows. В поиске так и наберите «Командная строка»:


    как удалить папку с длинным названием

    В окне командной строки нам нужно набрать команду:

    subst буква_виртуального_диска «путь_к_папке»

    Букву диска вы можете поставить любую, только чтобы она уже не была занята одним из локальных дисков. Например, у вас есть локальный диск C и D, а значит виртуальный диск вы уже не сможете обозвать той же буквой. Можно назвать, например, буквой «X», потому что она редко у кого используется в Windows.

    В качестве пути к папке вы вставляете путь к той папке, которую хотите подключить как виртуальную. Как я уже говорил, в моём примере виртуальной папкой сделаем «Программы для просмотра фильмов», а значит путь нужно указать вот такой:

    D:\Видео\Мои фильмы\Всё что нужно для просмотра фильмов\Программы для просмотра фильмов\

    Итак, итоговая команда в моём случае будет выглядеть вот так:

    subst X: «D:\Видео\Мои фильмы\Всё что нужно для просмотра фильмов\Программы для просмотра фильмов\»


    как удалить папку с длинным названием

    Чтобы выполнить введённую команду, нажимаем клавишу «Enter» на клавиатуре. Виртуальный диск будет создан.

    Теперь перейдём в проводник Windows, зайдём в раздел «Этот компьютер» (или «Компьютер») и видим там созданный виртуальный диск:


    как удалить папку с длинным названием

    Отличить его можете по букве. Я присваивал букву «X» виртуальному диску. Теперь если открыть этот виртуальный диск, то мы сразу окажемся в папке «Программы для просмотра фильмов». Т.е. мы взяли и срезали нафиг половину пути к конечной папке.

    Для сравнения…

    Ранее путь к конечной папке выглядел так:

    D:\Видео\Мои фильмы\Всё что нужно для просмотра фильмов\Программы для просмотра фильмов\Как открывать фильмы MP4\Список фильмов-примеров MP4\Перечень программ для открытия MP4\Что нельзя делать при открытии файлов MP4

    После подключения виртуального диска к папке «Программы для просмотра фильмов» путь к конечной папке выглядит так:

    X:\Как открывать фильмы MP4\Список фильмов-примеров MP4\Перечень программ для открытия MP4\Что нельзя делать при открытии файлов MP4

    Чувствуете разницу? Путь сокращён в два раза, поскольку буква диска сразу же направляет нас к папке в средине пути :) А поскольку путь сильно сокращён, наверняка теперь вы сняли ограничение по символам в названиях файлов и папок и сможете удалить файл или папку с длинным названием!

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

    Для этого снова откройте командную строку Windows и введите команду:

    Subst буква_виртуального_диска /d

    В моём случае буква диска «X», поэтому команда будет выглядеть вот так:


    как удалить папку с длинным названием

Когда я думал над вариантами решения проблемы, как удалить папку или файл с длинным названием, в интернете находил ещё такой вот вариант: удалить проблемный файл через программу «Total Commander». Попробовал, нифига не получилось, поэтому и советовать такой способ не стал :)) Да и способ, даже если он у кого-то бы и заработал, честно говоря не прикольный, потому что приходится ставить дополнительную программу на свой компьютер ради удаления одного лишь файла или папки с длинным названием…

Я думаю, при возникновении подобной проблемы, которая у меня возникала ни один раз, вам обязательно поможет один из вышеописанных способов.

На этом всё! До скорых встреч в следующих статьях ;)

Как удалить файл, имеющий слишком длинные имя или путь

Всем пользователям так или иначе приходилось сталкиваться с так называемыми неудаляемыми файлами и папками. Обычно причина, по которой объект нельзя удалить или переместить заключается в использовании его какими-то процессами, но это также может обуславливаться длиной пути. В этом случае при удалении файла пользователь получает сообщение «Слишком длинный путь к источнику».

Всё дело в том, что файловая система NTFS не поддерживает имена файлов длиной более 255 символов. Ну ведь никто не использует такие длинные имена, почему же тогда система не позволяет удалить файл? А всё потому, что под именем файла или папки Windows понимает весь путь, начиная с корня диска и заканчивая последней вложенной папкой.

Это досадное недоразумение будет устранено в новой файловой системе ReFS, которая в недалёком будущем должна прийти на смену NTFS. Файловая система ReFS поддерживает длину пути в 32767 символов против 255 в NTFS, что позволит создавать и удалять объекты с огромными путями, но это в будущем, а пока что решить проблему можно простым переименованием звеньев пути, то есть папок.

Иногда бывает достаточно переименовать одну папку, чтобы файл стал удаляемым, а в контекстном меню появились соответствующие опции.

Какое имя использовать? Ясно, самое короткое, например, «1» или «а».

Если переименования одной вложенной папки недостаточно, переименовываем следующую и так далее, пока общая длина пути не станет менее 255 символов.

Вот, собственно, и всё.

А теперь внимание.

Не применяйте этот трюк при удалении файлов с системного диска. Переименование папок верхнего уровня, особенно если в них имеются файлы, назначения которых вы не знаете, может привести к неполадкам в работе используемых их программ.

Как удалить файл в Windows со слишком длинным именем файла? [Дубликат]

Хитрость, которую я использовал, чтобы обойти ограничение длины «полный путь и имя файла» для перемещения, копирования или удаления чего-либо, заключается в том, чтобы сократить его путем «взлома» на полпути (или более) с использованием сопоставленной буквы диска, указывающей на папку путь вниз по пути .

так что у вас есть c: \ some \ long \ path ... \ и \ foo \ bar \ folder \ oldfiles \ myoldfile.txt.

Затем сопоставьте произвольную букву диска где-нибудь вдоль пути, чтобы длина первого фрагмента пути составляла всего несколько символов. Обязательное условие - папка должна находиться в общей папке (которая может уже быть, если она находится на сервере, где я должен был это сделать), и если ее еще нет, выберите папку где-нибудь в пути и поделиться этим. В зависимости от среды и уровня паранойи, разрешите всем изменять доступ к общему ресурсу, если разрешения NTFS достаточно ограничены. Если хотите, просто разрешите изменять права только для своей учетной записи.

Теперь перейдите в общую папку или папку внутри нее и поделитесь ею или используйте командную строку следующим образом. Предположим, вы использовали общую папку «foo» как «fooshare», тогда вы можете сделать

net use x: \\mycomputername\fooshare\bar\folders /persistent:no 

и диск X: теперь указывает непосредственно на папку «папки» внутри этого общего ресурса, поэтому «x: \ oldfiles \ myoldfile.txt» теперь довольно короткий.

(«/ Persistent: no» означает, что это не переживет следующую перезагрузку и не запутает вас в дальнейшем. Не забудьте отключить общий доступ к своей папке, когда закончите.)

Помните, что вы не должны делить папку , содержащую файл обязательно, если это уже внутри общей папки вы можете просто карту через акцию и вложенные папки в целевой папку рядом с файлом , и работает отлично.

Мне пришлось использовать эту технику, чтобы выполнить массовую робокопию между двумя серверами, когда мы поняли, что пользователи подключили диски достаточно глубоко в структуре папок, поэтому они смогли использовать оттуда 255 символов, но это превысило общую длину пути к файлу при доступе с локального диска root.

Удаление неудаляемых файлов и папок в Windows

В операционной системе Windows может возникнуть ситуация, когда при попытке удалить файл или папку, отображается сообщение:

Не удалось найти этот элемент

Его больше нет в "…". Проверьте расположение этого элемента и повторите попытку.

Такая ситуация чаще всего возникает из-за неправильного имени файла или папки (Windows имеет ряд ограничений на использование символов в именах файлов/папок), которое было изменено сторонними программы.

Встроенные средства

Так как по длинному имени удалить файл или папку Windows отказывается, можно попытаться выполнить операцию удаления по короткому имени через командную строку. Чтобы открыть окно командной строки в папке, в которой находятся неудаляемые файлы/папки, наберите "cmd" в строке пути проводника Windows и нажмите клавишу "Enter".

Чтобы узнать короткое имя файла/папки, наберите команду:

dir /x

и нажмите клавишу "Enter".

Отобразится список файлов и папок в текущем расположении. Слева от длинных имен, отображаемых в проводнике Windows, будет выведена колонка с короткими именами.

Чтобы удалить файл по короткому имени, выполните команду "del" с его указанием через пробел:

del короткое_имя_файла

Если файл доступен только для чтения, можно попытаться выполнить команду с ключом принудительного удаления "/f":

del /f короткое_имя_файла

Если нужно удалить папку вместе с подпапками и файлами, выполните следующую команду:

rd /s /q короткое_имя_папки

Сторонние программы

WinRAR

Одна из популярных программ для работы с архивами WinRAR в интерфейсе сжатия файлов/папок имеет опцию их удаления после упаковки. Можно воспользоваться данной функцией архиватора, а затем удалить и сам архив. Недостатком данного метода является то, что при удалении файлов/папок большого размера тратится много времени. Процесс можно ускорить, выбрав метод сжатия "Без сжатия".

FAR Manager

Консольный файловый менеджер FAR Manager позволяет работать с файлами и папками, содержащими неправильные для Windows имена. Он пользовался огромной популярностью в 90-годы во времена Windows 95/98. Последняя на момент написания статьи версия программы прекрасно работает в Windows 10. На официальном сайте присутствует сборка, не требующая установки (кнопка "Архив").

В программе FAR Manager удалять файлы/папки можно как минимум тремя способами:

  • F8 – в корзину;
  • Shift+Del – минуя корзину;
  • Alt+Del – уничтожение (wipe) файлов.
Удаление файлов в FAR Manager

Запустите FAR Manager, выберите нужный диск в левой панели с помощью комбинации клавиш "Alt+F1" ("Alt+F2" для правой). Локализуйте неудаляемый файл или папку на диске. Для перемещения по папкам используйте клавиши со стрелками ("Вверх", "Вниз") и "Enter", или мышь. Для удаления выбранного файла/папки нажмите одно из сочетаний клавиш, перечисленных в списке выше, и подтвердите действие клавишей "Enter".

Завершите работу приложения, нажав клавишу "F10" и подтвердив действие.

Исправление имени файла/папки в FAR Manager

Также в FAR Manager можно исправить имя файла или папки, чтобы они корректно работали в Windows и открывались в программах. Для этого на выделенном файле или папке нажмите клавишу "F6" (Переименование/Перемещение), сотрите путь, чтобы сработало только переименование без перемещения, наберите новое имя и нажмите клавишу "Enter".

path - Как удалить файл в Windows со слишком длинным именем файла?

Хитрость, которую я использовал, чтобы обойти ограничение длины "полный путь и имя файла" для перемещения, копирования или удаления чего-либо, состоит в том, чтобы сократить его путем "взлома" на полпути (или более) с использованием сопоставленной буквы диска, указывающей на папку путь вниз по пути.

так что у вас есть c:\some\long\path ...\ и \ foo \ bar \ folder \ oldfiles \ myoldfile.txt.

Затем сопоставьте произвольную букву диска где-нибудь вдоль пути, чтобы длина первого фрагмента пути составляла всего несколько символов. Обязательное условие - папка должна находиться в общей папке (которая может уже быть, если она находится на сервере, где я должен был это сделать), и если ее еще нет, выберите папку где-нибудь в пути и поделиться этим. В зависимости от среды и уровня паранойи, разрешите всем изменять доступ к общему ресурсу, если разрешения NTFS достаточно ограничены. Если хотите, просто разрешите изменять права только для своей учетной записи.

Теперь перейдите в общую папку или папку внутри нее и поделитесь ею или используйте командную строку следующим образом. Предположим, что вы использовали общую папку "foo" как "fooshare", тогда вы можете сделать

net use x: \\mycomputername\fooshare\bar\folders /persistent:no 

и диск X: теперь указывает непосредственно на папку "папки" внутри этого общего ресурса, поэтому «x:\oldfiles\myoldfile.txt» теперь довольно короткий.

(«/ Persistent:no» означает, что это не переживет следующую перезагрузку и не запутает вас позже. Не забудьте удалить свою папку, когда закончите.)

Помните, что вы не должны делить папку , содержащую файл обязательно, если это уже внутри общей папки вы можете просто карту через акцию и вложенные папки в целевой папку рядом с файлом , и работает отлично.

Мне пришлось использовать эту технику, чтобы выполнить массовую робокопию между двумя серверами, когда мы поняли, что пользователи подключили диски достаточно глубоко в структуре папок, поэтому они смогли использовать оттуда 255 символов, но это превысило общую длину пути к файлу при доступе с локального диска root.

Как удалить файл с длиной пути более 260 символов

Не секрет, что проводник Windows, как и большинство других Windows-приложений, включая PowerShell, не умеют работать с объектами файловой системы с глубокой вложенностью папок, длина пути к которым превышает 260 символов. Причем это ограничение существует только на уровне приложений, а сама файловая система NTFS поддерживает пути к файлам вплоть до 32767 символов.


Данное ограничение наложено библиотекой Win32 API, а которой максимальная  длина пути составляет 260 символов (MAX_PATH=260). В общем случае путь формируется из следующих элементов:  [C:\]+[путь_из_256_символов]+[<NUL>], причем максимальная длина одного каталога/файла в NTFS  — 255 символов в Unicode. При использовании юникодных функций API, возможно использовать путь до 32767 символов. Благодаря этому многие сторонние программы (те же популярные файловые менеджеры, например FAR и Total Commander) без каких-либо трудностей обрабатывает файлы/папки, длина пути к которым превышает 260 символов.

Совет. Обойти это ограничение Win32 API и работать с длинными именами файлов можно за счет использования UNC-формата пути, указывая абсолютный путь к файлу с использованием префикса extended-length path \\?\. Например, так \\?\C:\SomeLongPath\LongNameFile.txt

Это ограничение также не действует при сетевом доступе пользователей к файлам по протоколу SMB (за счет этого каталожные структуры с длинными путями нередкость именно на файловых серверах с пользовательскими данными). Администратор, обслуживающий данный сервер не может через стандартный интерфейс проводника Windows Explorer управлять (удалять/перемещать) файлы с длинными путями. При попытке создать/скопировать файл в такой каталог, появляется ошибка:

Destination Path Too Long. The file name (s) would be too long for the destination folder. You can shorten the file name and try again, or try a location that has a shorten path

Другие программы/диалоговые окна могут сообщать о наличии ограничения по своему.

Согласитесь забавно, что за окном 2014 год, а мы до сих пор говорим об ограничении в 260 символов на максимальную длину пути в Windows… Но похоже в ближайшее время никаких кардинальных изменений не предвидится, и даже в совсем свежей Windows 10 Technical Preview это ограничение все еще существует.

В этой статье мы покажем, как в Windows можно работать с файлами, путь к которым превышает 260 символов. В данном кейсе наша задача – удалить каталог, содержащий файлы с большой длиной пути.

При попытке удалить такой каталог из проводника появляется ошибка:

The file name(s) would be too long for the destination folder. You can shorten the file name and try again, or try a location that has a shorten path.

Powershell также не умеет корректно обрабатывать каталоги и файлы с большими путями, превышающими 260 символов. При попытке удалить каталог с такими файлами (C:\Install\MS SQL 2012 Express Edition 64 bit\verylongpath) появляется ошибка:

Remove-Item .\verylongpath -Recurse

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.
At line:1 char:1
+ Remove-Item .\verylongpath -Recurse
+ ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
+ CategoryInfo          : WriteError: (C:\Install\MS S...it\verylongpath:String) [Remove-Item], PathTooLongExcepti
on
+ FullyQualifiedErrorId : RemoveItemIOError,Microsoft.PowerShell.Commands.RemoveItemCommand

Самый простой вариант (он, собственно, и предлагается в окне с ошибкой) – сократить название родительских папок, уменьшив общую длину пути (но применимо не всегда).

Другой вариант – создать символическую ссылку на часть пути, укоротив тем самым общую длину пути:

mklink /d c:\install\link “C:\Install\MS SQL 2012 Express Edition 64 bit\verylongpath”

Далее файловые операции проводить с каталогом, на который назначена символьная ссылка.

Еще один вариант, напоминающий работу с символьной ссылкой  — сопоставить проблемную папку виртуальному диску (в нашем примере X: ), тем самым также сократив длину пути:

Subst X: “C:\Install\MS SQL 2012 Express Edition 64 bit\verylongpath”

Теперь можно работать с данными на диске X:, пути к файлам в котором не будут превышать лимит. После окончания работы можно удалить виртуальный диск:

Subst X: /d

Но лично мне больше всего для задачи удаления данных в таких ситуациях нравится возможности robocopy.exe, которая поддерживает работу с длинными путями.

С помощью опции /MIR, утилита robocopy может создать полную копию (зеркало) исходного каталога в целевом. И, если исходная папка пустая, все данные в целевой папке также очищаются. Создадим пустую папку C:\Install\test и с помощью аргумента /MIR выполним копирование содержимое тестовой папки в целевую (если имя папки содержит пробелы или кириллические символы, путь нужно взять в кавычки).

robocopy /MIR C:\Install\test "C:\Install\MS SQL 2012 Express Edition 64 bit\verylongpath"

После выполнения команды содержимое каталога C:\Install\MS SQL 2012 Express Edition 64 bit\verylongpath очищается (заменятся содержимым пустого каталога).

Итак, сегодня мы показали несколько простых трюков, которые можно использовать при работе с папками на файловых серверах, содержащих папки, длина пути к которым превышает лимит 260 символов.

Как удалить "Слишком длинное имя файла." в окнах. [Командная строка]

Переполнение стека
  1. Около
  2. Продукты
  3. Для команд
  1. Переполнение стека Общественные вопросы и ответы
  2. Переполнение стека для команд Где разработчики и технологи делятся частными знаниями с коллегами
  3. Вакансии Программирование и связанные с ним технические возможности карьерного роста
  4. Талант Нанимайте технических специалистов и создавайте свой бренд работодателя
.

не может удалить файлы с длинными именами? Почини за 5 секунд

Windows имеет ряд особенностей, перенесенных с давних времен, например, способ обработки длинных имен файлов.Вот что делать, если длинное имя файла вызывает у вас проблемы.

delete-long-files-featured

«Пожалуйста, помогите. Я не могу удалить файл из-за слишком длинного имени файла».

Это сложная проблема, которую можно решить за пять секунд, и все, что для этого нужно, - это простая команда DOS из прошлого.Но сначала давайте познакомимся с одной из старейших ошибок, которые выдает Windows, и их виновником: длинные имена файлов (LFN).

Что такое длинные имена файлов?

Длинные имена файлов унаследованы от Windows 95 и ее архитектуры MS-DOS.В системе LFN указаны имена файлов и каталогов длиной до 255 символов. Это было изменением по сравнению со старым соглашением об именах файлов 8.3, которое содержало не более восьми символов (после любого пути к каталогу), за которым, возможно, следовало расширение имени файла, состоящее из точки [.] И не более трех дополнительных символов.

Поскольку Windows имеет обратную совместимость, мы будем использовать это «взаимное преобразование» между двумя системами именования файлов для решения нашей проблемы, потому что иногда имена файлов превышают установленные для них ограничения.

Многие программы Windows ожидают, что максимальная длина пути будет короче 255 символов.Это ограничение не включает путь к файлу, в котором он находится. Но когда вы копируете файл из одного места, учитывается весь путь к файлу.

Long File Name

Файлы со слишком длинными именами файлов могут быть продуктом других операционных систем.Он также может быть создан в виде файла кэша стороннего программного обеспечения. Или это может быть медиафайл с очень длинным именем. Иногда эти файлы также создаются, если они существуют в более глубоких каталогах, таких как общий сетевой ресурс.

Вы можете управлять такими файлами с помощью программного обеспечения, которое их создало.Но если это не поможет, есть гораздо более простое решение.

Устранение ошибок "слишком длинного" имени файла

Это простой трехэтапный процесс удаления файла с длинным именем.Уловка состоит в том, чтобы автоматически сгенерировать более короткое имя файла и использовать его.

  1. Откройте командную строку в каталоге, в котором находится файл.
  2. Используйте команду DOS, чтобы получить короткое имя файла в формате имени файла 8.3.
  3. Теперь используйте команду DEL в DOS для файла, чтобы удалить файл.

Посмотрим, как это работает на примере. Здесь у нас есть файл с длинным именем в каталоге.

Откройте проводник и перейдите к файлу в его каталоге.Нажмите Shift , а затем щелкните правой кнопкой мыши пустую область. Выберите Открыть окно команд здесь . Откроется окно командной строки, в котором будет указан путь к каталогу, в котором вы находитесь.

Open Command Prompt

Введите команду DOS для вывода списка файлов и папок в текущем каталоге.Команда dir является внутренней командой и доступна во всех операционных системах Microsoft. Атрибут / X отображает короткие имена для файлов, отличных от 8.3. Вы также можете использовать DIR / X / P для приостановки и перехода от одного экрана к другому, когда файлов слишком много для изучения.

На скриншоте ниже показан текстовый файл, который мы хотим удалить, с «измененным» коротким именем.

Итак, вы можете видеть, как мы использовали DOS для «автоматического создания» более короткого имени файла.Теперь просто используйте простую команду DEL для короткого имени файла, чтобы удалить файл. Это оно!

Урок здесь - не пренебрегать DOS.Есть множество полезных команд DOS, которые могут спасти вам день. Пока вы их запоминаете, вы также захотите узнать, как исправить еще одну распространенную проблему Windows: файлы, которые заблокированы для редактирования и удаления.

dosprompt 8 полезных команд DOS, которые следует запомнить

Windows 7 по-прежнему имеет окно командной строки.так что еще есть место для команд DOS. Поэтому для тех из вас, кому нравится идея ввести несколько команд, чтобы избежать хлопот, связанных с несколькими щелчками мыши, я собираюсь рассмотреть восемь из того, что я считаю наиболее важными и полезными командами DOS, которые все еще доступны в Windows. 7.

Изображение предоставлено: hanss через Shutterstock.com

intel logo golden background Раджа Кодури от Intel: 2021 год станет золотым веком графических процессоров

Кодури называет Intel, AMD и Nvidia тремя наиболее влиятельными разработчиками графических процессоров.

Об авторе Сайкат Басу (Опубликовано 1539 статей)

Сайкат Басу - заместитель редактора по Интернету, Windows и производительности.Избавившись от грязи MBA и десятилетней маркетинговой карьеры, он теперь увлечен тем, что помогает другим улучшить свои навыки рассказывания историй. Он ищет пропавшую оксфордскую запятую и ненавидит плохие скриншоты. Но идеи фотографии, фотошопа и производительности успокаивают его душу.

Ещё от Saikat Basu
Подпишитесь на нашу рассылку новостей

Подпишитесь на нашу рассылку, чтобы получать технические советы, обзоры, бесплатные электронные книги и эксклюзивные предложения!

Еще один шаг…!

Подтвердите свой адрес электронной почты в только что отправленном вам электронном письме.

.

Как удалить файл, если имя файла слишком длинное

Если вы используете свои бизнес-компьютеры для хранения и организации всех своих бизнес-данных, вы иногда сталкиваетесь с файлами, имя которых слишком длинное для Windows 7. Windows 7 может обрабатывать имена длиной до 260 символов, но в это ограничение также включается весь путь к файлу. Если вы попытаетесь удалить файл, вы получите сообщение «Ошибка: слишком длинное имя файла». Вы получаете эту ошибку, потому что Windows пытается переместить файл в корзину.Чтобы решить эту проблему, вы должны запретить Windows перемещать файл в папку корзины. Если это не сработает, вы можете использовать утилиту командной строки для удаления файла.

Отключить корзину

Шаг 1

Щелкните правой кнопкой мыши панель задач Windows и выберите «Показать рабочий стол» в контекстном меню, чтобы перейти на рабочий стол.

Шаг 2

Щелкните правой кнопкой мыши папку «Корзина» и выберите «Свойства» в контекстном меню, чтобы открыть окно свойств корзины.

Шаг 3

Выберите каждый диск и установите переключатель «Не перемещать файлы в корзину ...».

Шаг 4

Нажмите «Применить», а затем «ОК», чтобы применить новые настройки и закрыть окно «Свойства».

Шаг 5

Выберите файл с длинным именем, нажмите «Удалить» и нажмите «Да», когда вас спросят, хотите ли вы удалить файл навсегда.

Шаг 6

Снова откройте окно «Свойства корзины», выберите каждый диск и щелкните переключатель «Другой размер».Нажмите «Применить», а затем «ОК», чтобы повторно включить корзину с настройками по умолчанию.

Использование командной строки

Шаг 1

Нажмите «Пуск» и выберите «Компьютер» в меню, чтобы открыть проводник Windows.

Шаг 2

Перейдите в папку, содержащую ваш файл, нажмите «Shift», щелкните правой кнопкой мыши пустое место на правой панели и выберите «Открыть командное окно здесь» из контекстного меню, чтобы запустить утилиту командной строки.

Шаг 3

Введите «dir / x» и нажмите «Enter», чтобы запустить команду и вывести список всех файлов в папке с их короткими именами.Краткое имя, присвоенное Windows 7 вашему файлу, отображается между его размером и столбцами с длинным именем.

Шаг 4

Введите «del short_name» (заменив «short_name» на короткое имя файла, который нужно удалить) и нажмите «Enter», чтобы удалить файл.

Ссылки

Советы

  • Кроме того, в проводнике Windows вы можете выбрать файл, удерживая «Shift» и нажать «Удалить», чтобы удалить его навсегда, даже если вы используете корзину.

Предупреждения

  • Окончательно удаленные файлы восстановить невозможно.

Writer Bio

Кирк Беннет начал писать для веб-сайтов и онлайн-публикаций в 2005 году. Он освещает темы в области питания, здоровья, садоводства, обустройства дома и информационных технологий.

.

windows - Python - Удаление файлов с длинными именами

Переполнение стека
  1. Около
  2. Продукты
  3. Для команд
  1. Переполнение стека Общественные вопросы и ответы
  2. Переполнение стека для команд Где разработчики и технологи делятся частными знаниями с коллегами
  3. Вакансии Программирование и связанные с ним технические возможности карьерного роста
  4. Талант Нанимайте технических специалистов и создавайте свой бренд работодателя
.

Как удалить файл или папку со слишком длинным путем

При копировании и синхронизации файлов и папок с помощью Iperius Backup или любого другого программного обеспечения для резервного копирования иногда может случиться, что целевой путь к файлам становится слишком длинным для обработки Windows (фактически, максимальная длина пути, разрешенная проводником Windows, составляет 255/260 символы). Когда папка содержит файлы, путь которых превышает максимальный путь, разрешенный Windows, могут возникать ошибки при копировании или удалении этих файлов.Практически эту папку больше нельзя удалить.

Long Path Eraser (LPE) - это бесплатный инструмент, который позволяет удалять файлы и папки со слишком длинными путями, которые нельзя удалить вручную. Long Path Eraser автоматически удаляет выбранную папку, включая все ее файлы и подпапки, независимо от длины их пути (даже если они находятся в сетевой папке).

Скачать Long Path Eraser Free 1.2 (обновлено 14.06.2016)

Как сказано выше, может случиться так, что операция копирования создает пути длиннее максимального значения, которое вы можете обработать вручную с помощью проводника Windows (http: // support.microsoft.com/kb/320081/it). Когда это происходит, папка, содержащая файлы с длинными путями, больше не может быть удалена, занимая дисковое пространство и генерируя ошибки, если вы попытаетесь переместить или скопировать ее вручную.

Windows может отображать следующие ошибки:

  • «Ошибка не удается удалить файл: невозможно прочитать из исходного файла или диска»
  • «Путь слишком длинный»
  • «Невозможно удалить файл или папку. Имя файла, которое вы указали, недействительно или слишком длинное. Укажите другое имя файла.”
  • «Невозможно удалить папку <имя_папки> - слишком длинное имя файла или расширение»
  • «Слишком длинное имя файла»

Long Path Eraser позволяет выбрать корневую папку, из которой начать удаление всего ее содержимого в рекурсивном режиме, восстановление дискового пространства и окончательное решение проблемы.

Long Path Eraser - это бесплатное программное обеспечение, разработанное Enter Srl (www.entersrl.net). Он может использоваться компаниями и свободно распространяться. Long Path Eraser переносится, поэтому установка не требуется, вам просто нужно запустить исполняемый файл.

Скачать Long Path Eraser Free

(итальянский, французский, немецкий, испанский, португальский (Бразилия))

.

eclipse - Как удалить длинный путь в windows.

Переполнение стека
  1. Около
  2. Продукты
  3. Для команд
  1. Переполнение стека Общественные вопросы и ответы
  2. Переполнение стека для команд Где разработчики и технологи делятся частными знаниями с коллегами
.

Смотрите также