В операционной системе Windows собственное имя файла не может содержать символы

Обновлено: 07.07.2024

Еще один момент, на который следует обратить внимание, заключается в том, что существует разница между тем, как операционная система представляет файл, и тем, как она разрешает его. Например, если вы использовали Windows 95/98/NT, вы, вероятно, столкнулись с файлом README.TXT. Файл может быть представлен операционной системой полностью заглавными буквами. Однако, если вы откроете командную строку MS-DOS и введете команду edit readme.txt , файл, написанный заглавными буквами, будет загружен в программу редактирования, даже если вы ввели имя строчными буквами!

Это потому что семейство операционных систем Windows 95/98/NT разрешает файлы без учета регистра, даже если файлы представлены в нем с учетом регистра. С другой стороны, операционные системы на основе Unix всегда разрешают файлы с учетом регистра; если вы попытаетесь отредактировать README.TXT с помощью команды vi readme.txt , вы, скорее всего, редактируете пустой буфер нового файла.

Вот как Samba обрабатывает регистр: case установлено значение yes , Samba всегда будет использовать регистр, предоставленный операционной системой, для представления (не разрешения) имен файлов. Если для него установлено значение no , он будет использовать регистр, указанный параметром case по умолчанию. То же самое справедливо и для краткосрочного сохранения. Если для этой опции установлено значение yes, Samba будет использовать регистр операционной системы по умолчанию для представления имен файлов 8.3; в противном случае будет использоваться регистр, указанный параметром case по умолчанию. Наконец, Samba всегда будет разрешать имена файлов в своих общих ресурсах на основе значения параметра с учетом регистра.

Опция регистра по умолчанию используется с сохранением регистра. Указывает регистр по умолчанию (верхний или нижний), который Samba будет использовать при создании файла на одном из своих общих ресурсов от имени клиента. Регистр по умолчанию — нижний , что означает, что вновь созданные файлы будут использовать имена в смешанном регистре, данные им клиентом. При необходимости вы можете переопределить этот глобальный параметр, указав следующее:

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

Этот параметр указывает, создается ли файл, созданный Samba от имени клиента, с регистром, предоставленным клиентской операционной системой, или с регистром, указанным выше в параметре конфигурации случая по умолчанию. Значение по умолчанию — yes, в котором используется регистр, предоставленный клиентской операционной системой. Если для него установлено значение no , используется значение параметра case по умолчанию.

Обратите внимание, что этот параметр не обрабатывает запросы файлов 8.3, отправленные от клиента — см. вариант краткого сохранения ниже. Вы можете установить для этой опции значение yes, если приложения, создающие файлы на сервере Samba, чувствительны к регистру, используемому при создании файла. Если вы хотите, например, заставить Samba имитировать поведение файловой системы Windows NT, вы можете оставить для этого параметра значение по умолчанию, да .

Этот параметр указывает, будет ли имя файла 8.3, созданное Samba от имени клиента, создаваться с регистром по умолчанию клиентской операционной системы или с регистром, заданным параметром конфигурации регистра по умолчанию. Значение по умолчанию — yes, в котором используется регистр, предоставленный клиентской операционной системой. Вы можете разрешить Samba выбирать регистр с помощью параметра case по умолчанию, установив его следующим образом:

Если вы хотите заставить Samba имитировать поведение файловой системы Windows NT, вы можете оставить этот параметр установленным по умолчанию. , да .

Эта опция на уровне общего ресурса указывает, будет ли Samba изменять имена файлов для клиентов 8.3 в этом общем ресурсе. Если для параметра установлено значение no , Samba не будет изменять имена и (в зависимости от клиента) они будут либо невидимы, либо усечены для тех, кто использует операционные системы 8.3. Значение по умолчанию — да. Вы можете переопределить его для каждого общего ресурса следующим образом:

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

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

Этот параметр на уровне общего доступа указывает символ искажения, используемый, когда Samba преобразует имена файлов в формат 8.3. Используемый символ по умолчанию — тильда (~). Вы можете сбросить его на любой символ, какой пожелаете, например:

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

Если поведения по умолчанию, связанного с изменением имени, недостаточно, вы можете дать Samba дополнительные инструкции о том, как себя вести, используя параметр искаженной карты. Эта опция позволяет указать шаблоны сопоставления, которые можно использовать до или даже вместо изменения имени, выполняемого Samba. Например:

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

Обсудите и поддержите Ошибку «Имя файла не может содержать ни один из следующих символов» в Windows 10 Network and Sharing для решения проблемы; Это происходит даже несмотря на то, что ни один из указанных символов не используется в переименовании моих файлов, которые я пытаюсь переименовать. Обсуждение в разделе «Сеть и общий доступ к Windows 10», начатое RojilioCoronado, 7 февраля 2020 г.

Ошибка "Имя файла не может содержать ни один из следующих символов"

Ошибка с сообщением «Имя файла не может содержать ни один из следующих символов» — Похожие темы — ошибка с сообщением о файле

Невозможно создать папку, которая содержит более 255 символов в пути и имени

Невозможно создать папку, которая содержит более 255 символов в пути и имени: Здравствуйте, я пытаюсь найти в Google и найти, как сделать так, чтобы мой путь и имя файла могли превышать 255 МАКСИМАЛЬНЫХ символов . Я нашел 2 решения. С reg edit Ключ реестра Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\FileSystem\LongPathsEnabled Тип: REG_DWORD должен.

Имя файла не соответствует этим китайским иероглифам

Имя файла не соответствует этим китайским иероглифам: я попытался открыть файл, содержащий mp3 со словами. Когда я открываю этот музыкальный файл в приложении Groove Music, он фактически не отображает китайские иероглифы. Это также происходит в проигрывателе Windows Media. Когда я попытался воспроизвести музыкальный файл с помощью Microsoft Edge, он отображается.

Персидские символы в именах файлов

Персидские символы в именах файлов: как разрешить отображение персидских букв в именах файлов в Microsoft? например, گ, چ, پ или ڨ. Мой компьютер принимает арабский язык, поскольку это мой родной язык, но мне также нужны некоторые символы персидского языка, поскольку алфавиты этих двух языков очень похожи. Я НЕ ХОЧУ.

Китайский иероглиф в именах заархивированных файлов

Китайские иероглифы в именах заархивированных файлов. Привет, я переводчик, и мне присылают много файлов, содержащих китайские иероглифы в именах файлов. Если эти файлы отправляются мне в zip-папке, имена файлов перепутываются, например. "δ--⌐ε½.doc", после распаковки. Есть ли способ предотвратить это? Мне нужно.

Имя файла не может содержать следующие символы / : \ * ? "

Имя файла не может содержать следующие символы / : \ * ? ": я пытаюсь использовать эти недопустимые термины для создания программы, которую я мог бы использовать в CMD для выполнения. Я пытаюсь создать переносимую JAVA на переносном жестком диске, используя следующие шаги, описанные ниже, соглашение об именах я не могу изменить тип файла на /"ИМЯ/", чтобы иметь возможность.

Формат арабских цифр – ошибка, если за цифрой следует какой-либо символ

Формат арабских цифр — проблема, если за числом следует какой-либо символ: привет, я обнаружил проблему с арабскими цифрами, начиная с окна 8 и заканчивая текущей сборкой Windows 10. Следующий снимок экрана для окна 10 и в окне 7 вы обнаружите, что арабские числа в окнах 10 преобразуются в английские числа после добавления символа валюты the.

Поиск имен файлов, содержащих символы

Поиск имен файлов, содержащих символы: у меня есть папка, содержащая файлы, которые я назвал с помощью = в имени, например. "Ричмондский отдел === dataRow">

Сравнить текстовый файл, содержащий имена файлов, с файлами в папке

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

Неправильные свойства файла, когда папка содержит файлы, длина которых превышает 255 символов

Неправильные свойства файла, когда папка содержит файлы, длина которых превышает 255 символов. Итак, эта проблема существует уже почти 10 месяцев, есть новости об этом?Разработчики работают над этим? Для меня это выглядит как глупая и легко исправимая ошибка. То есть я понимаю, что у ОС есть проблемы с длинными именами файлов, но раньше она просто пропускала эти файлы, теперь это так.

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

Не используйте какие-либо из упомянутых символов или слов в любой ОС при использовании клиента Desktop Sync.

Если клиент синхронизации работает в Linux/Unix, а целевое подключение для синхронизации находится в SMB, имена файлов и папок в Linux/Unix должны соответствовать правилам Windows для успешной синхронизации.

Если клиент синхронизации находится в Linux/Unix, а целевое подключение для синхронизации находится в SMB, и вы хотите просто переименовать файл с другим регистром, переименуйте файл в другое имя, дайте ему синхронизироваться, а затем переименуйте его. снова на нужное имя.

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

(меньше)
> (больше)
: (двоеточие - иногда работает, но на самом деле это NTFS Alternate Data Streams)
" (двойная кавычка)
/ ( косая черта)
\ (обратная косая черта)
| (вертикальная черта или вертикальная черта)
? (вопросительный знак)
* (звездочка)

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

Если ваши файлы создаются с помощью программы, не используйте непечатаемые символы. Дополнительную информацию об управляющих символах ASCII см. в разделе «Таблица управляющих кодов» Википедии.

Хотя в файловых системах Linux/Unix разрешено создавать файлы с управляющими символами в имени файла, они могут быть недоступны и/или несинхронизируемы.

0–31 (управляющие символы ASCII)

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

Следующие имена файлов зарезервированы:

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

Другие правила

Если клиент синхронизации находится в Linux/Unix, а целевое подключение для синхронизации находится в SMB, у вас не может быть одного и того же имени файла или папки, но с разными регистрами. Появится значок креста, указывающий на то, что файл не может быть синхронизирован. Для успешной синхронизации файлы в Linux/Unix должны соответствовать правилам Windows.

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

Примеры и подводные камни

При создании файла в Linux/Unix, например my-filename. (см. точку в конце) или my-filename.LPT1 (см. зарезервированное имя LPT1), вы можете синхронизировать файл со своим ownCloud, если целью монтирования является Linux/Unix. Когда пользователь Windows пытается синхронизировать эти файлы, Windows отклоняет файл. Сравнение списка файлов в обеих средах показывает, что на одной стороне больше файлов, чем на другой. Уведомления не будет, так как это зависит от ОС.

При переименовании существующего файла в Linux/Unix путем простого изменения регистра, например owncloud → ownCloud , могут возникнуть проблемы на стороне синхронизации Windows, так как в Windows файл выглядит так же.

Брайан Тиманн закладывает основу для понимания файловой системы UNIX в OS X Leopard, объясняя, как файлы и папки работают в оболочке.

Эта глава из книги

Эта глава из книги

Эта глава из книги 

Если вы случайный пользователь Mac или даже если вы заядлый пользователь Linux или Unix, есть несколько особенностей Mac OS X и особого вкуса Unix под его конфетной оболочкой, которые могут вас зацепить. вне охраны. Файлы и папки ведут себя совершенно иначе, когда вы обращаетесь к ним с помощью текстовых команд, чем когда вы перемещаете их с помощью мыши. Они не только выглядят иначе, но и действуют по-разному. Можно даже сказать, что они «думают иначе».

Оболочка, которую мы называем средой командной строки, отображаемой приложением «Терминал», представляет собой строгую и загадочную часть программного обеспечения, настолько непохожую на Mac, насколько это вообще возможно. К концу этой книги вы найдете для него всевозможные применения — трюки, которые иначе были бы невозможны при использовании графического интерфейса Aqua. Но есть крутая кривая обучения, особенно для читателей, которые никогда раньше не баловались Unix, и есть несколько вещей, которые вам нужно знать о том, как ваши файлы работают в оболочке, прежде чем вы сможете действительно начать упорядочивать их.< /p>

Более подробно это будет обсуждаться в Главе 4, "Основные команды Unix", но вы должны знать, что каждая команда Unix полностью задокументирована в командной строке с использованием mhthan ("manual" ) команда. Введите man command, чтобы узнать больше о любой команде, о которой вы слышали.

Все есть файл

Ваш Mac предназначен в первую очередь для отображения документов, папок, приложений и других элементов в аккуратно упорядоченных окнах с красивыми значками рядом с ними, которые помогут вам различать их по типу. Вы можете открывать окна Finder, в которых отображается тип каждого элемента в столбце, отличающий изображения Photoshop от документов Word, папок и приложений. В Mac OS X даже есть «пакеты», представляющие собой специальные папки, полные исполняемых файлов и других элементов, маскирующихся под отдельные монолитные файлы в Finder, о которых вы узнаете больше в главе 5 «Использование Finder». На графическом уровне ваш Mac заполнен всевозможными элементами, каждый из которых имеет свой уникальный внешний вид и описательный словарь.

Не так много важного на уровне командной строки. Ваша оболочка не видит папку иначе, чем документ Word; они оба просто «потоки битов с именами», насколько это касается, и в его мировоззрении эпохи 1970-х это все, что имеет значение. Единственное, что отличает папку (или каталог) от файла, это то, что биты в ней описывают ссылки на другие файлы, которые операционная система должна интерпретировать как часть этой папки, а не двоичные или текстовые данные. поток, из которого состоит содержимое файла, но для Unix это пустяки. Если вы используете команду ls ("list") в оболочке для вывода списка файлов в папке, вы получите просто список имен — без значков, без стрелок поворота вниз, без подсказок. чтобы помочь вам понять, что некоторые вещи, на которые вы смотрите, являются файлами, а некоторые — папками, приложениями или чем-то еще. (Есть несколько опций, которые вы можете дать команде ls, чтобы сделать ее более умной в отношении того, как она перечисляет элементы, как вы увидите позже; но это любезность, которую Unix предоставляет только неохотно.)

В мире Unix все представляет собой файл, включая такие странности, как запущенные процессы, сетевые подключения и подключенные устройства, и вы взаимодействуете с ними практически одинаково, используя одни и те же команды для всего (за некоторыми исключениями, как команда mkdir). Я указываю на это, чтобы вы знали, что если вы видите, что примеры командной строки в этой книге ссылаются на «файлы», это означает «файлы, папки и любые другие дискретные фрагменты данных». Если команда делает различие между обычными файлами данных и другими типами элементов, я так и говорю; но в остальном вы обычно можете ожидать, что команда будет работать одинаково с одним типом элемента и с другим, потому что она будет видеть «файлы» с такой же малой дискриминацией, как и Unix.

Читайте также: