Запрещенные символы в имени файла windows

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

Дело в том, что в операционной системе Windows имеются запрещенные имена файлов. Не все имена файлов и папок разрешены, потому что существуют недопустимые символы в имени файла или папки.

Содержание:

  1. Недопустимые имена файлов Windows
  2. Запрещенные символы в имени файла или папки
  3. Как создать папку с недопустимым именем
  4. Как удалить папку с недопустимым именем файла — 3 способа
  5. Выводы статьи

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

Обычно, операционные системы Microsoft, например, Windows 7, Windows 8.1, Windows 10, Windows 11, не привередливы, когда речь идет об именах файлов и папок. Хотя там есть ограничение на максимальное количество символов в имени файла или папки, чтобы соответствовать файловой системе NTFS (New Technology File System).

Операционная система Windows принимает почти все имена для файлов и каталогов. Однако некоторые заголовки для объектов файловой системы применить невозможно при создании обычным образом.

Например, если вы попытаетесь назвать новую или существующую папку именем «CON», то появится сообщение об ошибке «Указано неверное имя устройства».

указано неверное имя устройства

В данном случае, это имя зарезервировано для сокращенного наименования консоли — «console». Это связано с тем, что некоторые имена файлов или папок не могут быть назначены, потому что в Windows запрещенные имена файлов не разрешено использовать.

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

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

Недопустимые имена файлов Windows

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

Не используйте подобные имена с расширением имени файла, потому что в этом случае расширение не учитывается. Операционная система воспринимает файлы «CON» и «con.txt» как одно и тоже.

Список недопустимых имен в Windows:

  • CON, PRN, AUX, NUL, COM0, COM1, COM2, COM3, COM4, COM5, COM6, COM7, COM8, COM9, LPT0, LPT1, LPT2, LPT3, LPT4, LPT5, LPT6, LPT7, LPT8, LPT9.

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

Запрещенные символы в имени файла или папки

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

В ОС Windows в имени файла запрещено использование следующих символов в файловой системе NTFS (таблица):

< знак меньше, чем
> знак больше, чем
: двоеточие
« двойные кавычки
/ косая черта (прямой слеш)
\ обратная косая черта (обратный слеш)
| вертикальная черта
? вопросительный знак
* звездочка

В файловой системе FAT имеются следующие запрещенные символы в имени файла (таблица):

. точка
« двойные кавычки
/ косая черта (прямой слеш)
\ обратная косая черта (обратный слеш)
[ левая квадратная скобка
] правая квадратная скобка
: двоеточие
; точка с запятой
| вертикальная черта
= знак равенства
, запятая

Помимо вышеперечисленных примеров лучше не использовать в именах файлов и папок следующие символы из-за ограничений Интернета или других файловых систем (таблица):

# решетка
% процент
& амперсанд
пробел
+ плюс
@ символ «собака»

Имена файлов не могут заканчиваться пробелом или точкой.

Как создать папку с недопустимым именем

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

Для примера, мы создадим папку с именем «CON» на локальном диске «C:».

Выполните следующие действия:

  1. В поле поиска Windows введите «cmd».
  2. Запустите командную строку от имени администратора.
  3. В окне интерпретатора командной строки введите предложенную команду, а потом нажмите на клавишу «Enter»:
md "\\.\C:\CON"

создание папки

После выполнения команды в указанном расположении появится папка с именем «CON».

папка с запрещенным именем

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

нет доступа к папке

Кроме того, удалить папку с компьютера не получится простым способом, с помощью щелчка правой кнопкой мыши и выполнения команды контекстного меню «Удалить».

Другая ситуация наблюдается в последних версиях Windows 11. Операционная система не позволяет создать папку с именем «CON» и другими неподдерживаемыми именами, но у вас получится удалить этот каталог, созданный в командной строке, обычным способом (кроме папки с именем «NUL»). Вы можете открыть подобную папку и вложенные в нее файлы.

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

На жестком диске (HDD) или на твердотельном накопителе (SSD) вашего компьютера находится неудаляемая папка. Независимо от того, создали ли вы сами папку или ее создал кто-то другой, вы захотите от нее избавиться. Простые методы решения этой проблемы не подойдут.

Используйте три предложенных метода.

1 способ.

Вызовите командную строку, как описано выше в статье и выполните команду:

rmdir \\.\C:\CON

удаление папки

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

Если в папке «CON» есть файлы, сначала очистите этот каталог через консоль командой:

del \\.\C:\CON /q

Затем удалите ненужную папку:

rmdir \\.\C:\CON

2 способ.

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

Несмотря на то, что программа Windows Tweaker давно не обновлялась, но она хорошо подходит для наших целей. Мы используем переносную версию (portable) приложения, которую не нужно устанавливать на компьютер.

Пройдите шаги:

  1. Скачайте Windows Tweaker по ссылке из облачного хранилища.
  2. Запустите приложение на ПК.
  3. В окне «Windows Tweaker» откройте вкладку «Задачи».
  4. На верхней панели выберите раздел «специальные имена папок».
  5. Здесь вы можете создать папку с любым запрещенным именем в Windows, например, для проведения исследований.
  6. Нажмите на кнопку «Просмотр и удаление». Убедитесь, что эта папка должна быть пуста перед удалением.

просмотр и удаление

  1. В окне «Выбор папки» выделите нужную папку, а затем нажмите на кнопку «Выбор папки».

выбор папки

  1. Эта папка сразу удаляется с компьютера.

3 способ.

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

Загрузитесь с Live USB на ПК. С помощью файлового менеджера, установленного на подобном диске, можно получить доступ к системе Windows. Linux нужен только драйвер для доступа на запись к файловой системе Windows. Удалите или переименуйте файл или папку с недопустимым именем.

Выводы статьи

У некоторых пользователей возникают вопросы, какие символы запрещено использовать в имени файла или папки. В операционной системе Windows имеются запрещенные знаки в имени файла или папки, а отдельные имена нельзя использовать на компьютере.

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

Похожие публикации:

  • 10 способов запустить локальную политику безопасности Windows
  • Как включить темный режим Windows 11
  • Как убрать экран блокировки Windows 11 — 5 способов
  • Как отключить автоматическое обновление драйверов Windows
  • Отключение изоляции ядра Windows 11 — 5 способов


This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters

Show hidden characters

https://ru.wikipedia.org/wiki/%D0%98%D0%BC%D1%8F_%D1%84%D0%B0%D0%B9%D0%BB%D0%B0
<pre>
Запрещённые символы
Многие операционные системы запрещают использование некоторых служебных символов.
Запрещённые символы Windows (в различных версиях):
\ — разделитель подкаталогов
/ — разделитель ключей командного интерпретатора
: — отделяет букву диска или имя альтернативного потока данных
* — заменяющий символ (маска «любое количество любых символов»)
? — заменяющий символ (маска «один любой символ»)
» — используется для указания путей, содержащих пробелы
< — перенаправление ввода
> — перенаправление вывода
| — обозначает конвейер
+ — (в различных версиях) конкатенация
Частично запрещённые символы Windows:
пробел — не допускается в конце имени файла;
. — не допускается в конце имени файла кроме имён каталогов, состоящих из точек и доступа с префиксом «\\?\».
Символы, вызывающие проблемы в широко распространённых компонентах:
% — в Windows используется для подстановки переменных окружения в интерпретаторе команд, вызывает проблемы при открытии файла через стандартный диалог открытия файла;
! — в Windows используется для подстановки переменных окружения в интерпретаторе команд, в bash используется для доступа к истории[1];
@ — в интерпретаторах команд вызывает срабатывание функций, предназначенных для почты.
В именах файлов UNIX и некоторых UNIX-подобных ОС запрещен слеш (/) — разделитель подкаталогов — и символ конца C-строки (\0). Перечисленные выше символы (кроме слеша) использовать можно, но из соображений совместимости их лучше избегать.
</pre>

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

Windows имеет список запрещенных символов, которые не могут быть использованы в именах файлов или папок. Например, такие символы как *, /, \, [, ], :, ;, | и многие другие являются недопустимыми и могут вызывать ошибки при создании или открытии файлов. Кроме того, недопустимо использование зарезервированных имен, таких как CON, PRN, AUX, NUL, COM, LPT и др., которые зарезервированы системой для определенных функций.

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

Запрещенные имена файлов в Windows — это не только по общепринятым стандартам, но и требованиям самой операционной системы. Соблюдая правила составления имен файлов, вы сможете избежать ошибок и проблем при работе с файлами в Windows и обеспечить безопасность данных.

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

Содержание

  1. Общие сведения о запрещенных именах файлов в Windows
  2. Запрещенные символы
  3. Запрещенные слова
  4. Длина имени файла
  5. Зарезервированные имена
  6. Дополнительные ограничения
  7. Проблемы при использовании запрещенных имен
  8. Советы по выбору имен файлов

Общие сведения о запрещенных именах файлов в Windows

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

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

Символы, которые не допускаются в именах файлов, включают специальные символы, такие как * (звездочка), / (косая черта), \ (обратная косая черта), : (двоеточие), ? (вопросительный знак), » (двойные кавычки), < (меньше), > (больше) и | (вертикальная черта).

Кроме того, запрещены имена, состоящие только из пробелов, а также имена, которые состоят из зарезервированных слов, используемых в операционной системе, таких как «con», «prn», «aux», «nul», «com», «lpt», «clock$» и «desktop.ini».

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

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

Знание о запрещенных именах файлов поможет избежать потенциальных проблем и обеспечит более эффективную работу с файловой системой Windows.

Запрещенные символы

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

Ниже приведен список запрещенных символов:

  • Обратный слеш (\)
  • Прямой слеш (/)
  • Вопросительный знак (?)
  • Восклицательный знак (!)
  • Угловые скобки (< и >)
  • Двоеточие (:)
  • Астериск (*)
  • Символы пайпа (|)
  • Кавычки (» и ‘)
  • Точка с запятой (;)
  • Знак равенства (=)
  • Знак процента (%)

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

Запрещенные слова

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

Вот список некоторых запрещенных слов в именах файлов:

  • CON
  • PRN
  • AUX
  • NUL
  • COM1
  • COM2
  • COM3
  • COM4
  • COM5
  • COM6
  • COM7
  • COM8
  • COM9
  • LPT1
  • LPT2
  • LPT3
  • LPT4
  • LPT5
  • LPT6
  • LPT7
  • LPT8
  • LPT9

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

Кроме того, также запрещены символы, которые не могут быть использованы в именах файлов, такие как:

  • \ (обратная косая черта)
  • / (прямая косая черта)
  • : (двоеточие)
  • * (звездочка)
  • ? (вопросительный знак)
  • » (кавычка)
  • < (меньше)
  • > (больше)
  • | (вертикальная черта)

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

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

Длина имени файла

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

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

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

  • Используйте краткие и описательные имена файлов;
  • Избегайте использования специальных символов, таких как /, \, : и *;
  • Начинайте имена файлов с буквы или цифры, а не с пробела;
  • Используйте правильные расширения файлов (.txt, .doc, .jpg и т.д.);
  • Избегайте использования слишком длинных путей к файлам.

Соблюдение этих рекомендаций поможет избежать проблем с длинными именами файлов в операционной системе Windows.

Зарезервированные имена

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

Некоторые из наиболее известных зарезервированных имен файлов включают:

  • CON: данное имя является сокращением от «console» и используется для представления консоли. Название файла «CON» не может быть использовано для создания обычного файла.
  • PRN: это сокращение от «printer» и используется для представления принтера. Файл с именем «PRN» не может быть создан или переименован.
  • AUX: это имя используется для представления порта ввода-вывода AUX. Аналогично, файл с именем «AUX» не может быть создан или переименован.
  • NUL: данное имя представляет устройство вывода, которое называется «NUL». Создание файла с именем «NUL» также недопустимо.
  • COM1, COM2, COM3, COM4, COM5, COM6, COM7, COM8, COM9: эти имена представляют последовательные порты COM, которые перенаправляются на физические последовательные порты компьютера. Создание файлов с именами «COM1» до «COM9» запрещено.
  • LPT1, LPT2, LPT3, LPT4, LPT5, LPT6, LPT7, LPT8, LPT9: эти имена представляют порты принтера, которые перенаправляются на физические порты принтера компьютера. Файлы с именами «LPT1» до «LPT9» не могут быть созданы или переименованы.

Также стоит помнить о том, что в системе Windows названия файлов регистрозависимы. Это означает, что файлы с именами «CON» и «con» будут восприниматься как разные файлы.

Избегайте использования зарезервированных имен файлов во избежание возможных проблем и сбоев при работе с файловой системой Windows.

Дополнительные ограничения

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

  • Максимальная длина имени файла составляет 260 символов. Это включает как имя файла, так и расширение.
  • Система регистрозависима, поэтому имена файлов с разными регистрами символов будут восприниматься как разные файлы.
  • В имени файла недопустимо использование пробелов в начале или конце строки, а также использование последовательности точек в середине или в конце имени.
  • Некоторые резервные и системные имена, такие как «con», «prn», «nul», «com1», «lpt1» и другие, зарезервированы операционной системой и не могут быть использованы для создания файлов.

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

Проблемы при использовании запрещенных имен

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

  • Невозможность создания или переименования файла. Если вы попытаетесь создать файл с запрещенным именем или переименовать уже существующий файл в запрещенное имя, операционная система Windows не позволит вам это сделать и выдаст ошибку.
  • Проблемы при копировании или перемещении файлов. Если запрещенное имя файла встречается в процессе копирования или перемещения файлов, операционная система не сможет выполнить операцию и выдаст ошибку.
  • Несовместимость с другими операционными системами. Если вы планируете использовать файлы с запрещенными именами на других операционных системах, таких как macOS или Linux, могут возникнуть проблемы. Некоторые имена, запрещенные в Windows, могут быть допустимыми в других операционных системах, и наоборот.
  • Проблемы с программами и приложениями. Некоторые программы и приложения могут не поддерживать работу с файлами, имеющими запрещенные имена. Это может привести к некорректной работе программы или потере данных.
  • Ошибки командной строки. Если вы пользуетесь командной строкой или скриптами для работы с файлами, запрещенные имена могут вызвать ошибки в процессе выполнения команд.

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

Советы по выбору имен файлов

  • Используйте осмысленные имена: Дайте файлу имя, которое ясно описывает его содержимое или функцию. Например, если файл содержит отчет о продажах, то его имя может быть «отчет_о_продажах.docx». Это поможет вам легче ориентироваться в большом количестве файлов и быстро найти нужный.
  • Избегайте специальных символов: Не используйте специальные символы, такие как запятые, вопросительные знаки, знаки препинания или пробелы в именах файлов. Они могут вызывать проблемы при работе с файлами, особенно если вы будете обращаться к ним через командную строку.
  • Соблюдайте правила операционной системы: Убедитесь, что ваше имя файла соответствует правилам файловой системы Windows. Например, имена файлов не могут содержать недопустимые символы, такие как \ / : * ? » < > |.
  • Используйте дату и версии: Если ваш файл является обновляемым и вы планируете сохранять его разные версии, рассмотрите возможность добавления даты или номера версии в имя файла. Например, «отчет_о_продажах_v1.docx». Это поможет вам отслеживать изменения и выбирать нужную версию при необходимости.
  • Будьте последовательными: Старайтесь использовать одинаковый формат именования файлов для всех файлов в рамках одного проекта или категории. Это поможет вам создать логическую организацию и облегчит поиск файлов.

При выборе имен файлов обратите внимание на эти советы, чтобы облегчить управление вашей файловой системой в операционной системе Windows.

The OP’s question has already been fully answered here and here, for instance. Here I am just extending those answers by showing how to fix it on Linux:

In Linux, find all file and folder names with characters which are forbidden in Windows

If you’re on Linux, and you just want to find all file and folder names with characters which are forbidden in Windows, you can run the following command:

# Find all files and folders with any of these Windows-illegal characters in
# their name:  \ : * ? " < > |
find . -name '*[\\:\*?\"<\>|]*'

This is really useful, for instance, so you can manually clean or «fix» a git code repository written on Linux which you now need to clone and use on Windows. If you don’t find and clean out and fix all of the Windows-incompatible characters in file and folder names first, the repository will fail to clone on Windows, and you’ll see errors like this, for instance:

$ git clone https://github.com/ElectricRCAircraftGuy/eRCaGuy_hello_world.git
Cloning into 'eRCaGuy_hello_world'...
remote: Enumerating objects: 4342, done.
remote: Counting objects: 100% (1184/1184), done.
remote: Compressing objects: 100% (366/366), done.
remote: Total 4342 (delta 819), reused 1149 (delta 799), pack-reused 3158Receiving objects: 100% (4342/4342), 6.50 Mi
Receiving objects: 100% (4342/4342), 7.02 MiB | 6.50 MiB/s, done.

Resolving deltas: 100% (2725/2725), done.
error: invalid path 'cpp/class_copy_constructor_and_assignment_operator/Link to Copy constructor vs assignment operat
or in C++ - GeeksforGeeks%%%%% [see `t2 = t1;  -- calls assignment operator, same as "t2.operator=(t1);" `].desktop'
fatal: unable to checkout working tree
warning: Clone succeeded, but checkout failed.
You can inspect what was checked out with 'git status'
and retry with 'git restore --source=HEAD :/'

Above, you can see the error: invalid path which made the git clone fail because my filename at path cpp/class_copy_constructor_and_assignment_operator/Link to Copy constructor vs assignment operat or in C++ - GeeksforGeeks%%%%% [see `t2 = t1; -- calls assignment operator, same as "t2.operator=(t1);" `].desktop is invalid in Windows, causing the repository to fail to clone on Windows, because it has the double quote (") character in it. So, I’m going to manually rename that file on Linux, removing the " chars, and push the changes to my git repository so that I can then clone it on Windows.

Keep Windows file paths <= 259 chars, and folder paths <= 248 chars (git clone error: Filename too long)

Even if you remove the forbidden chars from your folder and filenames by finding them with the find . -name '*[\\:\*?\"<\>|]*' command above, keep in mind that the Windows MAX_PATH limitation is still in place, limiting your total path length to <= 259 chars for a file, or <= 248 chars for a folder. See here: Maximum filename length in NTFS (Windows XP and Windows Vista)?

If you violate this path limit and then try to git clone a repo on Windows, you’ll get this Filename too long error:

$ git clone https://github.com/ElectricRCAircraftGuy/eRCaGuy_hello_world.git
Cloning into 'eRCaGuy_hello_world'...
remote: Enumerating objects: 4347, done.
remote: Counting objects: 100% (1189/1189), done.
remote: Compressing objects: 100% (370/370), done.
remote: Total 4347 (delta 823), reused 1152 (delta 800), pack-reused 3158
Receiving objects: 100% (4347/4347), 7.03 MiB | 5.82 MiB/s, done.
Resolving deltas: 100% (2729/2729), done.
error: unable to create file cpp/class_copy_constructor_and_assignment_operator/Link to Copy constructor vs assignmen
t operator in C++ - GeeksforGeeks%%%%% [see `t2 = t1;  -- calls assignment operator, same as ''t2.operator=(t1);'' `]
.desktop: Filename too long
Updating files: 100% (596/596), done.
Filtering content: 100% (8/8), 2.30 MiB | 2.21 MiB/s, done.
fatal: unable to checkout working tree
warning: Clone succeeded, but checkout failed.
You can inspect what was checked out with 'git status'
and retry with 'git restore --source=HEAD :/'

Notice this part, because of my ridiculously-long filename:

error: unable to create file cpp/class_copy_constructor_and_assignment_operator/Link to Copy constructor vs assignment operator in C++ - GeeksforGeeks%%%%% [see `t2 = t1; -- calls assignment operator, same as ''t2.operator=(t1);'' `].desktop: Filename too long

Shorten your long filename to reduce the path length, commit and push the change, and try to clone again.

References:

  1. While on Windows 10 Pro, I tried to type a " into a folder name, and I got this popup window error:

    enter image description here

  2. I used https://regex101.com/ (see: https://regex101.com/r/lI5Lg9/1), to build and test the [\\:\*?\"<\>|] regular expression to know which characters to escape, by looking in the «Explanation» section on the right-hand side:

    enter image description here

Допустимые символы в имени файла

Допустимые символы в имени файла.

Содержание

1 Общая информация

  • Для Windows базируемся на документе https://docs.microsoft.com/ru-ru/windows/win32/fileio/naming-a-file.

2 Запрещённые печатные символы ASCII

2.1 Linux/Unix

  • / (forward slash)

2.2 Windows

  • < (less than)
  • > (greater than)
  • : (colon), в NTFS имеет семантику альтернативных потоков данных (Alternate Data Streams)
  • " (double quote)
  • / (forward slash)
  • \ (backslash)
  • | (vertical bar or pipe)
  • ? (question mark)
  • * (asterisk)

3 Непечатаемые символы

3.1 Linux/Unix

  • 0 или NUL (NULL byte)

3.2 Windows

  • 031 (ASCII control characters)

4 Зарезервированные имена файлов

4.1 Windows

  • CON
  • PRN
  • AUX
  • NUL
  • COM1
  • COM2
  • COM3
  • COM4
  • COM5
  • COM6
  • COM7
  • COM8
  • COM9
  • LPT1
  • LPT2
  • LPT3
  • LPT4
  • LPT5
  • LPT6
  • LPT7
  • LPT8
  • LPT9

5 Другие ограничения

5.1 Windows

  • Имена файлов не могут заканчиваться пробелом или точкой.

5.2 macOS

  • Двоеточие : и косая черта / запрещены в зависимости от контекста.
  • Двоеточие : используется в качестве разделителя в путях HFS, а косая черта / используется в качестве разделителя в путях POSIX.

Дмитрий Сергеевич Кулябов

Дмитрий Сергеевич Кулябов
Профессор кафедры прикладной информатики и теории вероятностей

Мои научные интересы включают физику, администрирование Unix и сетей.

Похожие

  • Броузер Nyxt
  • Контроллер Cisco WLC. Обновление программного обеспечения
  • Пакетный менеджер для Windows. WinGet
  • Перенос настроек профиля пользователя Windows
  • MSYS2. Приложения Unix под Windows

  • Запуск delphi 7 на windows 7
  • Запросите разрешение от администраторы на изменение этой папки windows 10 я и есть администратор
  • Запросите разрешение от администраторы на изменение этой папки windows 10 как удалить
  • Запуск cmd при установке windows
  • Запросите разрешение от администратора компьютера на изменение этого файла windows 10