Имя файла в файловой системе Windows может
Обновлено: 21.11.2024
По умолчанию процессы Windows обрабатывают файловую систему без учета регистра. Таким образом, они не различают файлы или папки по регистру. Например, имена файлов FILE.txt и file.txt рассматриваются как один и тот же файл, даже если их содержимое и вся остальная информация различаются.
При нормальной работе это не вызывает проблем, однако проблемы могут возникнуть, если файлы или папки получены из файловой системы, поддерживающей чувствительность к регистру, например Linux или UNIX, или если компьютер использует подсистему Windows для Linux (совместимость слой для собственного запуска бинарных исполняемых файлов Linux в Windows).
Чтобы упростить учет регистра при работе с этим типом файлов или папок. В обновлении Windows 10 от апреля 2018 г. (версия 1803) появился новый флаг, настраиваемый для каждого каталога. Если этот параметр включен, все процессы Windows будут учитывать регистр символов в папке и ее файлах, поэтому они будут рассматривать FILE.txt и file.txt как разные файлы.
Этот параметр применяется только к выбранным папкам и связанным файлам. Не вся файловая система. Кроме того, параметры не наследуются какими-либо вложенными папками, созданными в каталоге с учетом регистра.
Это может повлиять на вводимое пользователем расположение файлов и папок в некоторых собственных процессах Windows, включая исключения управляемого антивируса. Если местонахождение не точно совпадает с файлом дела и папкой дела. Процесс Windows не сможет запрашивать эти расположения.
Пример расположения файла с учетом регистра исключений управляемого антивируса
В следующем примере используется тестовый файл защиты от вредоносных программ eicar:
Расположение файла с учетом регистра
Управляемое исключение антивируса
Тестовый файл игнорируется (исключается)
Тестовый файл помещен в карантин
Проверить чувствительность папки к регистру
Чтобы проверить, чувствительна ли папка к регистру, запустите из командной строки следующую команду:
файл fsutil.exe queryCaseSensitiveInfo
Например, команда и ответ:
C:\ >файл fsutil.exe queryCaseSensitiveInfo C:\case_sensitivity
Атрибут, чувствительный к регистру, в каталоге C:\case_sensitivity отключен.
Что вы хотите сделать?
- Управление исключениями и примечания.
- Просмотрите общие системные переменные исключений
- Изучите блог разработчиков Майкрософт, посвященный учету регистра в каталогах и WSL.
Обратите внимание, что мы не несем ответственности за содержание внешних сайтов.
Всякий раз, когда вы хотите скопировать или удалить файл или папку, вы можете внезапно столкнуться с ошибкой с сообщением: «Имена исходных файлов больше, чем поддерживается файловой системой. Попробуйте перейти в расположение с более коротким путем или попробуйте переименовать его в более короткие имена, прежде чем пытаться выполнить эту операцию“.
Вы можете задаться вопросом, почему вы видите эту ошибку. Причина в том, что конкретный файл или папка находится глубоко в наборе подпапок с длинными именами, а Microsoft не разрешает использовать более 255 символов для подпапок. Вот почему он не позволяет вам перемещать файл, удалять его или даже переименовывать. Хуже всего то, что вы ничего не можете сделать с файлом/папкой, и он продолжает занимать вашу системную память.
Однако, к счастью, эту ошибку можно исправить. Посмотрим, как.
Оглавление
Решение 1. Переименовав содержащую папку
Шаг 1. Например, если вы хотите переименовать видеофайл, расположенный на диске E, вы не сможете его переименовать. Когда вы щелкаете по нему правой кнопкой мыши, у вас нет возможности переименовать файл.
Шаг 2. Причина, по которой его нельзя переименовать, заключается в том, что файл расположен глубоко внутри диска, поэтому путь к файлу слишком длинный и превышает требования Microsoft в 255 символов.
Шаг 3. Сейчас лучше всего сократить имя папки, потому что мы не можем переименовать файл. Итак, здесь мы сократили имя папки до LS, где находится файл. Вы можете изменить имя на любое в зависимости от ваших требований.
Шаг 4. Теперь, когда вы вернетесь к файлу и щелкните его правой кнопкой мыши, в контекстном меню появятся параметры «Переименовать» и другие параметры. Щелкните параметр «Переименовать», чтобы переименовать файл.
Вот и все. Теперь вы можете легко копировать, перемещать, удалять или переименовывать файл или папку.
Решение 2. Нажмите Shift + Delete, чтобы удалить
Если вы не можете удалить, используйте этот метод.
Если вы делаете щелчок правой кнопкой мыши, а затем удаляете , попробуйте это. Просто нажмите Shift + Delete, чтобы удалить файл, чтобы он не попал в корзину, а сразу был удален.
Решение 3. Используйте программное обеспечение WinRar
<р>1. Откройте WinRar, если на вашем компьютере установлен WinRar <р>2. Теперь перейдите к конкретному файлу или папке, с которой вы столкнулись с этой ошибкой. <р>3. Теперь выберите этот файл и нажмите «Добавить».<р>4. Теперь выберите Удалить файлы после архивации на следующем экране.
<р>5. Нажмите "ОК".<р>6. Теперь удалите этот заархивированный файл, если вы хотите удалить этот файл раньше.
Если вы хотите переместить файл, скопируйте и вставьте файл в другое место, а затем извлеките его оттуда.
Я не спрашиваю об общих синтаксических правилах для имен файлов. Я имею в виду ловушек, которые выпрыгивают из ниоткуда и кусают вас. Например, пытаетесь назвать файл "COM" в Windows?
7 ответов 7
- Пробел в конце имени
- Размещение точки в конце имени
- вспомогательный
- com1 ,
- com2 ,
- .
- com9 ,
- lpt1,
- lpt2,
- .
- lpt9,
- против,
- нуль,
- прн
Я считаю легитимность этой статьи сомнительной, поскольку в ней говорится, что в Mac OS X "имена файлов и папок не могут начинаться с точки '.'", что абсолютно неверно.
Это не просто имена файлов, которые вы зарезервировали в Windows, это любое из тех имен устройств, за которыми следует любое расширение, например. COM5.foo и COM5.bar недопустимы.
Ответы, содержащие только ссылки, не имеют большого значения для Stackoverflow, поскольку они могут перемещаться или умирать, что делает ваш ответ бесполезным для исследователей.
Сложная хитрость Unix, если вы не знаете:
Файлы, начинающиеся с - или --, допустимы, но с ними сложно работать, так как многие инструменты командной строки думают, что вы предоставляете им параметры.
Многие из этих инструментов имеют специальный маркер "--", обозначающий конец опций:
Как уже говорили другие, имена устройств, такие как COM1, нельзя использовать в качестве имен файлов в Windows, поскольку они являются зарезервированными устройствами.
Однако существует способ выхода для создания и доступа к файлам с этими зарезервированными именами, например, эта команда перенаправит вывод команды ver в файл с именем COM1:
Теперь у вас будет файл с именем COM1, который 99% программ не смогут открыть и, вероятно, зависнут, если вы попытаетесь получить к нему доступ.
Вот статья Microsoft, в которой объясняется, как работает это "пространство имен файлов". По сути, он говорит Windows не выполнять какую-либо обработку строк в тексте и передавать его прямо в файловую систему. Этот прием также можно использовать для работы с путями длиннее 260 символов.
Крис Хоффман
Крис Хоффман
Главный редактор
Крис Хоффман – главный редактор How-To Geek. Он писал о технологиях более десяти лет и два года был обозревателем PCWorld. Крис писал для The New York Times, давал интервью в качестве эксперта по технологиям на телевизионных станциях, таких как NBC 6 в Майами, и освещал свою работу в таких новостных агентствах, как BBC. С 2011 года Крис написал более 2000 статей, которые были прочитаны почти миллиард раз — и это только здесь, в How-To Geek. Подробнее.
Файловая система Linux во многом отличается от файловой системы Windows. Вы не найдете букв дисков или обратной косой черты, но вы найдете инопланетное расположение, в котором файлы могут иметь одинаковые имена, отличающиеся только заглавными буквами.
Это не исчерпывающий список. Он предназначен для новых пользователей Linux, которые не знают обо всех различиях между Linux и Windows. Есть много других применимых различий.
Структура каталогов
Вы не найдете папки Windows, Program Files или Users, если начнете просматривать файловую систему на своем компьютере с Linux. (Хотя каталог /home/ очень похож на папку Users.)
Структура каталогов Linux не просто использует разные имена для папок, она использует совершенно другой макет. Например, в Windows приложение может хранить все свои файлы в папке C:\Program Files\Application. В Linux его файлы будут разделены между несколькими местами: его двоичные файлы в /usr/bin, его библиотеки в /usr/lib и его файлы конфигурации в /etc/.
Мы объяснили, что такое каждый каталог в файловой системе Linux и для чего он нужен. Для получения подробной информации прочитайте: Объяснения HTG: объяснение структуры каталогов Linux
Чувствительность к регистру
В Windows нельзя иметь файл с именем file и другой файл с именем FILE в одной папке. Файловая система Windows не учитывает регистр, поэтому эти имена рассматриваются как один и тот же файл.
В Linux файловая система чувствительна к регистру. Это означает, что у вас могут быть файлы с именами file, File и FILE в одной и той же папке. Каждый файл будет иметь разное содержимое — Linux рассматривает заглавные и строчные буквы как разные символы.
Обратная косая черта и прямая косая черта
Windows использует обратную косую черту, как и DOS. Например, путь к каталогу пользователя в Windows:
В Linux путь к домашнему каталогу пользователя:
Нет букв диска — все под /
Windows показывает разделы и устройства по буквам дисков. Независимо от того, есть ли у вас несколько жестких дисков, несколько разделов на одном жестком диске или подключены съемные устройства, каждая файловая система доступна под своей буквой диска.
В Linux нет букв дисков. Вместо этого он делает другие файловые системы доступными в произвольных каталогах. (Windows тоже может это делать, но это не работает из коробки.)
В Linux все находится под корневым каталогом /. Над корневым каталогом нет файлов, так как есть файлы за пределами C: в Windows. Когда вы подключаете устройство к компьютеру, оно становится доступным в папке /media/. Содержимое каталога отображает содержимое смонтированного раздела.
Если у вас есть несколько жестких дисков или разделов жесткого диска, вы можете смонтировать их в любом месте вашей файловой системы. Например, вы можете поместить свои домашние каталоги в отдельный раздел, смонтировав другой раздел в /home. Однако вы можете смонтировать раздел где угодно — вы даже можете смонтировать его в /myBackupDrive.
Все есть файл
Подобно тому, как каждая смонтированная файловая система является каталогом в / (корневой каталог), все в Linux является файлом. Например, ваш первый жесткий диск представлен как /dev/sda, ваш компакт-диск доступен по адресу /dev/cdrom, а ваша мышь представлена как /dev/mouse.
Эта фраза на самом деле несколько упрощена — в Linux все не является файлом. Но понимание того, что означает эта фраза, поможет вам понять, как работает Linux. Чтобы узнать больше, прочитайте: HTG объясняет: что означает фраза «Все является файлом» в Linux
Вы можете удалять или изменять открытые файлы
В Linux и других UNIX-подобных операционных системах приложения блокируют монопольный доступ к файлам не так часто, как в Windows. Например, допустим, вы смотрите видеофайл в VLC в Windows. Идут титры, и вы закончили их смотреть, поэтому вы пытаетесь их удалить. Вы увидите сообщение об ошибке — вам нужно прекратить просмотр файла в VLC, прежде чем вы сможете удалить его, переименовать или сделать с ним что-либо еще.
В Linux обычно можно было удалить или изменить видеофайл во время его воспроизведения.Вы не увидите сообщений об ошибках, говорящих о том, что файл уже используется.
Эти различия должны относиться и к другим UNIX-подобным операционным системам. Однако могут быть некоторые отличия — например, Mac OS X не чувствительна к регистру. Он нечувствителен к регистру, как и Windows.
- › 6 лучших легковесных дистрибутивов Linux
- › Почему не было Windows 9?
- › Как установить Google Play Маркет в Windows 11
- › Как восстановить метки панели задач в Windows 11
- › Что означает XD и как вы его используете?
- ›5 шрифтов, которые следует прекратить использовать (и лучшие альтернативы)
- › Почему прозрачные чехлы для телефонов желтеют?
Читайте также: