Как узнать короткое имя файла

Обновлено: 06.07.2024

8,3 файла (также называется короткое имя файла или SFN ) является имя файла соглашение , используемое старыми версиями DOS и версии Microsoft Windows до Windows 95 и Windows NT 3.5 . Он также используется в современных операционных системах Microsoft в качестве альтернативы длинному имени файла для совместимости с устаревшими программами. Соглашение об именах файлов ограничено файловой системой FAT . Подобные схемы именования файлов формата 8.3 также существовали в более ранних операционных системах миникомпьютеров CP / M , TRS-80 , Atari и некоторых Data General и Digital Equipment Corporation .

СОДЕРЖАНИЕ

Обзор

8.3 имен файлов ограничены не более восьми символов (после любого каталога спецификатора), а затем при необходимости путем расширения имени файла , состоящем из периода . и не более трех дополнительных символов. Для систем, которые поддерживают только имена файлов формата 8.3, лишние символы игнорируются. Если имя файла не имеет расширения, замыкающая . не имеет никакого значения (то есть, myfile и myfile. эквивалентны). Более того, имена файлов и каталогов в этой системе пишутся в верхнем регистре , хотя системы, использующие стандарт 8.3, обычно не чувствительны к регистру (что CamelCap.tpu эквивалентно имени CAMELCAP.TPU ). Однако в операционных системах , отличных от 8.3 (например, почти любая современная операционная система), обращающихся к файловым системам 8.3 (включая дискеты в формате DOS , но также включая некоторые современные карты памяти и сетевые файловые системы), базовая система может изменять имена файлов внутри, чтобы сохранить регистр и избегайте усечения букв в именах, например, в случае VFAT .

VFAT и компьютерные имена файлов формата 8.3

VFAT , вариант FAT с расширенным форматом каталогов, был представлен в Windows 95 и Windows NT 3.5. Это позволило использовать длинные имена файлов Unicode (LFN) в смешанном регистре в дополнение к классическим именам 8.3, используя несколько 32-байтовых записей записей каталога для длинных имен файлов (таким образом, что только одна из них будет распознаваться старым системным программным обеспечением 8.3 как допустимая запись каталога. ).

Для обеспечения обратной совместимости с устаревшими приложениями (в DOS и Windows 3.1 ) в файловых системах FAT и VFAT автоматически создается имя файла 8.3 для каждого LFN, через которое файл все еще можно переименовать, удалить или открыть, хотя сгенерированное имя (например, OVI3KV

N ) может иметь небольшое сходство с оригиналом. В файловых системах NTFS создание имен файлов формата 8.3 может быть отключено. Имя файла 8.3 можно получить с помощью функции Kernel32.dll GetShortPathName.

Хотя не существует обязательного алгоритма для создания имени 8.3 из LFN, Windows использует следующее соглашение:

  1. Если LFN в верхнем регистре 8,3, LFN вообще не будет храниться на диске.
    • Пример: TEXTFILE.TXT
  2. Если LFN имеет смешанный регистр 8.3, LFN будет хранить имя в смешанном регистре, а имя 8.3 будет его версией в верхнем регистре.
    • Пример: TextFile.Txt становится TEXTFILE.TXT .
  3. Если имя файла содержит символы, недопустимые в имени 8.3 (включая пробелы, которые были запрещены соглашением, но не API-интерфейсами), или какая-либо часть слишком длинная, имя удаляется из недопустимых символов, таких как пробелы и дополнительные точки. Если имя начинается с точек, . ведущие точки удаляются. Другие символы, например + , заменяются подчеркиванием _ , а буквы вводятся в верхнем регистре. Затем удаленное имя обрезается до первых 6 букв базового имени , за которым следует тильда , за которой следует одна цифра , за которой следует точка . , за которой следуют первые 3 символа расширения.
    • Пример: TextFile.Mine.txt становится TEXTFI

1.TXT (или уже TEXTFI

2.TXT должен TEXTFI

1.TXT существовать). ver +1.2.text становится VER_12

1.TEX . .bashrc.swp становится BASHRC

    Пример: TextFile.Mine.txt делается TEXTF

10.TXT если TEXTFI

1.TXT через TEXTFI

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

ISO 9660 файловой системы ( в основном используется на компакт - дисках ) имеет те же ограничения , на самом базовом уровне 1, с дополнительным ограничением , что имена каталогов не могут содержать расширения и что некоторые символы ( в частности , дефисы ) не допускается в именах файлов. Уровень 2 допускает имена файлов длиной до 31 символа, более совместимые с классическими именами файлов AmigaOS и Mac OS .

Во время антимонопольного дела Microsoft 2001 года названия MICROS

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

Совместимость

Эта устаревшая технология используется в широком спектре продуктов и устройств в качестве стандарта для обмена информацией, например, компактные флэш-карты, используемые в фотоаппаратах. Длинные имена файлов VFAT LFN, представленные в Windows 95/98 / ME, сохранили совместимость. Но VFAT LFN, используемый в системах на базе NT (Windows NT / 2K / XP), использует модифицированное короткое имя 8.3.

Если имя файла содержит только строчные буквы или представляет собой комбинацию базового имени в нижнем регистре с расширением в верхнем регистре , или наоборот; и не имеет специальных символов и соответствует ограничениям 8.3, запись VFAT не создается в Windows NT и более поздних версиях, таких как XP. Вместо этого используются два бита в байте 0x0c записи каталога, чтобы указать, что имя файла следует рассматривать как полностью или частично в нижнем регистре. В частности, бит 4 означает расширение в нижнем регистре, а бит 3 в нижнем регистре базового имени , что позволяет использовать такие комбинации, как example.TXT или, HELLO.txt но не Mixed.txt . Немногие другие операционные системы поддерживают это. Это создает проблему обратной совместимости с именами файлов со старыми версиями Windows (95, 98, ME), которые видят имена файлов с заглавными буквами, если это расширение использовалось, и, следовательно, могут изменять регистр символов в файле при его транспортировке, например, на USB-накопитель. Это может вызвать проблемы для операционных систем, которые не демонстрируют нечувствительность к регистру имен файлов, как это делают DOS и Windows. Текущие (> 2.6) версии Linux распознают это расширение при чтении; короткое имя параметра монтирования определяет, используется ли эта функция при записи. Для MS-DOS вы можете использовать DOSLFN Хенрика Хафтманна.

Таблица каталогов

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

Допустимые символы для имен файлов DOS включают следующее:

Это исключает следующие символы ASCII :

  • " , * , + , , , / , : , ; , < , = , > , ? , \ , [ , ] , |
    Windows / MS-DOS не имеет оболочки экранирующего символа
  • . ( U + 002E . ПОЛНЫЙ ОСТАНОВ ) в имя и расширение полей, за исключением . и .. записи (см ниже)
  • Строчные буквы a - z , хранящиеся как A - Z в FAT12 / FAT16
  • Управляющие символы 0–31
  • Значение 127 ( DEL )

Имена файлов DOS находятся в наборе символов OEM . Код 0xE5 в качестве первого байта (см. Ниже) создает проблемы при использовании дополнительных символов ASCII .

Записи каталога, как в области корневого каталога, так и в подкаталогах, имеют следующий формат:

Смещение байта Длина Описание
0x00 8 Имя файла DOS (с пробелами)

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

0x00 Запись доступна, и никакая последующая запись не используется
0x05 Начальный символ на самом деле 0xE5
0x2E Ввод точки : либо, . либо ..
0xE5 Запись ранее была удалена. Утилиты восстановления файлов должны заменять этот символ обычным символом как часть процесса восстановления.

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

Немного Маска Описание
0 0x01 Только чтение
1 0x02 Скрытый
2 0x04 Система
3 0x08 Метка тома
4 0x10 Подкаталог
5 0x20 Архив
6 0x40 Устройство (только для внутреннего использования, на диске не обнаружено)
7 0x80 Неиспользованный

Значение атрибута 0x0F используется для обозначения записи с длинным именем файла.

Биты Описание
15–11 Часы (0–23)
10–5 Минуты (0–59)
4–0 Секунды / 2 (0–29)

Обратите внимание, что секунды записываются только с разрешением 2 секунды . Более точное разрешение для создания файла находится по смещению 0x0d.

Биты Описание
15–9 Год (0 = 1980, 127 = 2107)
8–5 Месяц (1 = январь, 12 = декабрь)
4–0 День (1–31)

Работа с короткими именами файлов в командной строке

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

    Имя файла SFN может содержать не более 8 символов перед точкой. Если их больше, необходимо написать первые 6, затем тильду

  • Любые пробелы в именах файлов следует игнорировать при преобразовании в SFN.
  • Игнорируйте все точки, кроме последней. Не включайте никакие другие точки, как и пробелы. Используйте последнюю точку, если есть, и следующие символы (до 3). Например, для .manifest будет использоваться только .man.
  • Запятые, квадратные скобки, точки с запятой, знаки = и + заменяются подчеркиванием.
  • Регистр не важен, символы верхнего и нижнего регистра обрабатываются одинаково.

Чтобы точно узнать имена SFN или 8.3 файлов в каталоге

использование: dir /x показывает короткие имена, если они есть, и длинные имена.

или: dir /-n показывает только короткие имена в исходном формате списка DIR.

В операционных системах на базе Windows NT апплеты командной строки ( cmd.exe ) принимают длинные имена файлов с подстановочными знаками (вопросительный знак ? и звездочка * ); длинные имена файлов с пробелами должны быть экранированы (т.е. заключены в одинарные или двойные кавычки).

Начиная с Windows Vista , консольные команды и апплеты PowerShell выполняют ограниченное сопоставление с образцом , разрешая использование подстановочных знаков в имени файла и каждом подкаталоге в пути к файлу и автоматически подставляя первую соответствующую запись каталога (например, изменит текущий каталог на ). C:\> CD \prog*\inter* C:\Program Files\Internet Explorer\

Длинные пути Windows

Описание проблемы длинных путей

Раньше имена файлов в Windows ограничивались форматом 8.3 - всего восемь символов для имени файла и три для расширения. С появлением Windows 95 Microsoft сняла этот предел и позволила использовать гораздо более длинные имена.

Тем не менее, файловая система Windows по-прежнему накладывает некоторые ограничения, например, какие символы могут использоваться в именах файлов и общую длину путей. Некоторое время максимальная длина пути составляла 260 символов, но с появлением Windows 10, часть ограничений начала потихоньку уходить, например для приложений и появилась возможность отключить проверку MAX_PATH и использовать длинные пути без префикса \\?\.

Что интересно, значение в 260 символов обусловлено значением MAX_PATH Win32 API. У файловой системы NTFS максимальная длина пути ″немного″ больше и составляет 32767 символа. Для обхода ограничений Win32 API некоторые приложения используют формат UNC, указывая абсолютный путь с префиксом \\?\, например так:

Хочу отметить, что на период ноября 2020 года и последней версий Windows 10 1909, в ПРОВОДНИКЕ Windows до сих пор есть ограничения в 260 символов, и мы все слышим обещания, что их исправят

Большинство людей может и не столкнуться с ней, а вот почти каждый системный администратор обязательно это увидит. Тут все дело в том, что в большинстве организаций есть свои сетевые файловые ресурсы, через которые пользователи производят обмен и работу с документами. В какой-то момент люди могут создать такой путь, который будет 258 или 260 символов, попытаются туда скопировать файл, а им выдастся ошибка:

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

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

Тоже самое при копировании в папку, так же выскакивает "Слишком длинный целевой путь".

Слишком длинный целевой путь, решаем за минуту

Вот ошибка при извлечении архива в сетевую папку:

Не удается завершить извлечение. Слишком длинный конечный путь. Переименуйте сжатую ZIP-папку и повторите попытку

Не удается завершить извлечение. Слишком длинный конечный путь. Переименуйте сжатую ZIP-папку и повторите попытку

Методы снимающие ограничения на длину пути в Windows

  • Через групповую или локальную политику Windows (Применимо только к Windows 10 и Windows Server 2016 и выше)
  • Через реестр Windows (Применимо только к Windows 10 и Windows Server 2016 и выше)
  • Через сторонние утилиты 7-Zip, Far, TotalCommander (Применимо ко всем версиям Windows)
  • Использование силинков (символических ссылок) (Применимо ко всем версиям Windows)
  • Через сетевой диск, для укорачивания пути
  • Утилиты xcopy, robocopy

Нюансы длинных путей в приложениях

Есть один нюанс. Этот новый параметр (имеется ввиду та политика и ключ реестра) не обязательно будет работать со всеми существующими приложениями, но он будет работать с большинством. В частности, любые современные приложения должны работать нормально, как и все 64-битные приложения. Старые 32-разрядные приложения должны быть применимы для работы, что на самом деле просто означает, что разработчик указал в файле манифеста приложения, что приложение поддерживает более длинные пути. Большинство популярных 32-битных приложений не должно вызывать проблем. Тем не менее, вы ничем не рискуете, пробуя настройку. Если приложение не работает, единственное, что произойдет, это то, что оно не сможет открывать или сохранять файлы, сохраненные в местах, где полный путь превышает 260 символов.

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

<application xmlns="urn:schemas-microsoft-com:asm.v3">
<windowsSettings>
<longPathAware xmlns="http://schemas.microsoft.com/SMI/2016/WindowsSettings">true</longPathAware>
</windowsSettings>
</application>

Как в Windows 10 отключить ограничение на длину пути в 260 символов через политику

Чем примечателен данный метод, так это тем, что неподготовленных пользователей он не вынуждает выполнять команды или производить правку реестра, тут все в графическом виде. Так же если у вас есть домен Active Directory и вы хотите массово убрать ошибки "Слишком длинный целевой путь" или "Слишком длинный конечный путь" в приложениях и запретить им проверять MAX_PATH и использовать длинные пути без префикса \\?\, то групповые политики вам это помогут.

Еще раз напоминаю, что данный метод подойдет и для серверных версий, даже самых современных Windows Server 2019

Покажу для начала, как делать через локальную политику, открываете окно "Выполнить" в котором пишите gpedit.msc.

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

Как в Windows 10 отключить ограничение на длину пути в 260 символов

Далее идем по пути:

Конфигурация компьютера - Административные шаблоны - Система - Файловая система (Computer configuration - Administrative templates - System - Filesystem)

Найдите тут параметр "Включить длинные пути Win32 (Enable Win32 long paths)", по умолчанию он отключен, и я честно не понимаю почему. Активируйте его.

Включить длинные пути Win32

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

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

Включение поддержки длинных путей через реестр

Данный метод ни чуть не сложнее предыдущего и делает все то же самое, включает поддержку длинных путей свыше 256 символов для приложений Windows. Когда вы что-то меняете через редактор политик, по сути меняются настройки в реестре, это нужно помнить и знать. Сейчас я вам покажу какой ключ меняется. Откройте редактор реестра Windows. Перейдите в раздел:

тут вам необходимо найти параметр LongPathEnabled, которому для активации поддержки длинных путей и изменения ограничений в MAX_PATH, нужно задать значение "1". Тут потребуется перезагрузка.

Включение поддержки длинных путей через реестр Windows. LongPathEnabled

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

Ключи реестра для активации MAX_PATH

Еще вы можете сделать такую поддержку и для конкретного пользователя по пути:

Если там нет ключа LongPathsEnabled, то создайте его, тип DWORD (32 бита) и значение 1.

Как в Windows 10 отключить ограничение на длину пути в 260 символов через PowerShell

Не все люди готовы копаться в редакторах и реестрах, им нужно быстрое решение, одним из таких является PowerShell. В оболочке выполните команду для активации параметра "Включить длинные пути Win32 (LongPathEnabled)". Не забываем перезагрузить систему.

Set-ItemProperty -Path HKLM:\SYSTEM\CurrentControlSet\Control\FileSystem -Name LongPathsEnabled -Value 1

Как в Windows 10 отключить ограничение на длину пути в 260 символов через PowerShell

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

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

Как в Windows 10 отключить ограничение на длину пути в 260 символов через командную строку

Запустите командную строку в режиме администратора и введите:

reg add "HKLM\SYSTEM\CurrentControlSet\Control\FileSystem" /v LongPathsEnabled /t REG_DWORD /d 1

Как в Windows 10 отключить ограничение на длину пути в 260 символов через командную строку

Обход ограничений длинных путей через 7zFM

Исправляем Слишком длинный путь к источнику через 7zFM

Откройте 7zFM.exe и перейдите в нем в конечную папку вашего пути.

Для создания новой папки нажмите клавишу F7.

Создание папки в 7zFM.exe

Задайте необходимое вам имя, в моем примере это будет "БОльше 260 Microsot".

Указание имени у создаваемой папки в 7zFM.exe

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

Успешно созданная папка через 7zFM.exe

Проверяем, что директория доступна через проводник Windows.

Обход ограничений длинных путей через 7zFM

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

Обход ограничений длинных путей через 7zFM

Как обойти ограничение длинных путей через символьную ссылку

Такой трюк мы с вами уже проделывали, когда нужно было переносить IMAP профиль у Outlook. Смысл в том, что создается файл в нужном вам месте, и этот файл это просто ярлык ссылающийся на нужный вам файл или папку, после этого путь сокращается и вы можете удалять или создавать все что вам нужно. Откройте командную строку, далее вам нужно иметь два составляющих:

  • Путь где будет лежать файл символической ссылки - в моем примере C:\короткий путь
  • Длинный путь - C:\Share\WINDOW

Как обойти ограничение длинных путей через символьную ссылку

Нам поможет команда mklink, где ключ /D создает ссылку на каталог

Символическая ссылка успешно создана, можно проверять.

Создание символической ссылки для решения проблемы длинных путей

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

Как в Windows 10 отключить ограничение на длину пути в 260 символов через PowerShell

Как обойти ограничение длинных путей через сопоставление subst

subst - простая команда позволяющая связать нужный путь к каталогу с буквой диска. Так же откройте командную строку в режиме администратора и сопоставьте ваш длинный путь с буквой W.

Как обойти ограничение длинных путей через сопоставление subst

У вас в проводнике Windows должен появиться диск с данной буквой, если его нет, то прочитайте статью "Не появляется диск после команды subst" или просто в проводнике вбейте W:\ и нажмите Enter.

Как устранить проблему длинных путей Windows

Как обойти ограничение длинных путей через монтирование сетевого диска

В командной строке используйте команду net use, далее буква диска, которую мы присваиваем и в самом конце путь:

Создание сетевого диска ведущего на длинный путь Windows

Как видим все прекрасно отработало и диск появился.

Как обойти ограничение длинных путей через монтирование сетевого диска

Использование утилит Far или Total Commander

После включения параметра "Включить длинные пути Win32" данные утилиты в 100% случаев помог вам произвести любые действия с папками или файлами на любом длинном пути в системе Windows. Откройте Total Commander и создайте для примера папку в каталоге с длинным путем, напоминаю для этого нужно нажать F7.

Использование утилит Far или Total Commander

Как видите все прекрасно создается, удаляется или копируется при желании.

Встретив непонятное словосочетание, читатель, как правило, стремится узнать его значение. Эта статья – краткая экскурсия для пользователя по миру неизведанного.

Общее понятие файла

Долговременная (внешняя) память компьютера хранит все данные в виде файлов. Что же это такое? Файл является именованной последовательностью байтов, состоящих, в свою очередь, из битов. У него есть собственное имя и адрес размещения. Первый параметр указывает человек, а второй - задает и надолго запоминает операционная система. Поиск осуществляется по имени файла, поэтому записывать его адрес пользователю ни к чему.

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

файл имена файлов

Файловая система

Каждый носитель информации (гибкий, жесткий или лазерный диск) может содержать огромное ее количество. Файловая система предназначена для хранения данных и организации различных каталогов. В широком смысле она состоит из совокупности всей информации на диске, наборов структур данных, комплекса системных программных средств. Корневой каталог состоит из вложений 2-го уровня, которые, в свою очередь, включают в себя папки 3-го и т. д. Одноуровневая линейная система применяется для дисков с несколькими файлами, многоуровневая иерархическая – для дисков с их большим количеством. Второй присуща древовидная структура.

Назначение файловой системы

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

из чего состоит имя файла

Типы файлов

Благодаря определенной информации компьютер приблизительно может «понимать», что находится в наборе данных и с помощью какой программы это можно открыть. Расширение является несколькими буквами или цифрами, находящимися после точки в стандартном имени файла. Оно определяет тип данных и соответствующую программу. Например, информация, записанная на диск с расширением mp3, откроется в проигрывателе. Картинка программы присутствует на изображении файла. По этому значку опытный пользователь сразу понимает, где можно применить указанный тип данных. Документ откроется только в программе, предназначенной для текста. Видеофайлы можно прокрутить в проигрывателе. Информация в виде картинок открывается в графическом редакторе. Существует множество различных файлов. Каждый из них имеет значок, указывающий на соответствующую программу.

Файл: имена файлов

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

Состав имени файла

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

имя файла состоит из

Полное имя

Можно привести такой пример:

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

полное имя файла

Короткое имя

Ограничения операционной системы MS-DOS явились причиной возникновения этого термина. В те времена файл мог иметь только 8 символов в имени. Немного позже появилась возможность ставить точку после названия и дописывать 3 знака расширения.

Это выглядело так:

Разработчики стали использовать расширения имен для технических потребностей. С их помощью программы «научились» распознавать тип файла. Эта схема записи имени файла была названа системой 8.3 (по количеству символов названия и расширения, и точка между ними). Она имела ряд недостатков: невозможность использования пробела, знаков препинания, иных букв, кроме английского алфавита. Поэтому создать содержательное название было очень трудно. Краткое имя не содержит символа косой черты (\). По такому названию можно сослаться на данные текущего каталога.

Длинное имя

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

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

Проблемные объекты

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

имя файла это

Корректное имя файла

Оно может состоять из любых букв в верхнем и нижнем регистре, числа, точки и подчеркивания. Использование пробела не запрещается. Однако не стоит им злоупотреблять, а также ставить в начало названия. В имя можно включить иные символы, за исключением зарезервированных знаков (> < | ? * / \ : "). Расширение отделяется от названия последней правой точкой. Длина имени ограничивается 255 знаками. На самом деле обычному пользователю хватает 20 символов. Операционная система не различает строчные и прописные буквы в имени файла. Это означает, что сохранить в одном каталоге два элемента с одинаковым названием, написанным в разном регистре, не получится. Так может выглядеть пример совпадающих имен: «Текст.doc» и «ТЕКСТ.doc».

Некорректное название файла

Кроме указанных ограничений, существует запрет на использование зарезервированных имен устройств.

Так, PRN является принтером. COM1-COM4 – устройствами, присоединяемыми к последовательным портам 1-4. AUX выполняет ту же функцию, что и COM1. LPT1-LPT4 являются элементами, присоединяемыми к параллельным портам 1-4 (принтерам), CON (consol) при вводе – клавиатурой, при выводе – экраном, NUL – «пустым» устройством. При попытке пользователя указать зарезервированное название система выдает ошибку. Предупреждение отображается и в том случае, когда используются запрещенные символы. Оно указывает на недопустимое имя файла. Неверно записанная информация о наборе данных не сохраняется, а принимает прежнее значение.

Шаблон названия файла

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

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

Особые символы

Шаблон имени файла задается с помощью специальных знаков:

  • Звездочка является обозначением любой группы символов. Их количество не имеет значения. К примеру, одна звездочка – это шаблон, которому соответствует вся информация в каталоге. Благодаря команде *.mp3 можно изменить любой однотипный файл. Имена файлов, начинающиеся на my и оканчивающиеся на .txt, выделяются с помощью шаблона my*.txt. Образец *2014* определяет все существующие на компьютере объекты, названия которых содержат в себе группу символов 2014. является обозначением любого одиночного символа. К примеру, под образец music. подойдут начинающиеся на указанное слово данные, имеющие расширение из трех английских букв. В шаблоне na?e.txt вместо стандартного знака вопроса может быть любой символ.

Иные команды

Предусмотрены и другие правила составления образцов. Благодаря включению в команду квадратных скобок ([ ]) с перечнем возможных значений можно сделать поиск более гибким. Если требуется найти какие-либо файлы, начинающиеся с буквы t, не учитывая регистр, то шаблон следует записать так: [tT]*. При поиске данных с именами, идущими по алфавиту, можно создать диапазон. Подобный шаблон выглядит так: [k-zK-Z]?.jpg. Системой будут найдены файлы с указанным типом расширения, имена которых состоят из двух знаков. Причем первая буква k, l, y или z - без учета регистра.

Значение командной оболочки

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

Расширение шаблона является процессом замены символа * на стройную последовательность имен файлов.

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

Маски имен файлов

Они используются в групповых операциях с данными. Маска является последовательностью допустимых в названиях файлов символов, в которых также могут попадаться знак вопроса и звездочка. С ее помощью можно удалить любой имеющийся на компьютере временный файл. Имена файлов в команде могут содержать различные обозначения. Знак вопроса является отметкой одного произвольного символа, а звездочка – целой последовательности. К примеру, воспользовавшись командой rm *mp3, можно удалить все файлы, заканчивающиеся на этот фрагмент. Если потребуется стереть все данные в каталоге, то следует задать команду rm *. Почти так же работает команда с вопросительным знаком, меняется один символ. Маски имен можно использовать и с каталогами.

маски имен файлов

Проблемное копирование

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

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

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

Запасные варианты

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

В крайнем случае пользователь может воспользоваться программой для копирования длинных имен FAR 2.0 и даже отключить Recycle Bin.

Загрузка. Пожалуйста,
подождите.

Репутация: нет
Всего: нет

Сокращенные имена папок. Имеется в виду, как они называются в DOS.
Например Docum

Репутация: 5
Всего: 87

Попробуйте блестну в качестве примаки - думаю поможет.

Репутация: нет
Всего: нет

Мне это нужно для пути к папке автозагрузки

Репутация: 5
Всего: 87

Репутация: 12
Всего: 29

M
bartram

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

Репутация: 2
Всего: 9

В Досе ограничение имен папок в 8 символов. Поэтому имя длиннее 8 символов обрезается до 6 знаков и дописывается два символа "

1", если уже такое имя есть, то ставится "

Репутация: 61
Всего: 109

Итак. Существует папка и надо узнать её имя в формате 8.3 ?

Не ничего проще.

Пуск / Выполнить / CMD

Используя команду CD, перемещаемся в родительскую папку той папки, имя которой нужно узнать.

Даём команду DIR /X

Цитата

Вывод имени либо смена текущего каталога.

.. обозначает переход в родительский каталог.

Команда CD диск: отображает имя текущего каталога указанного диска.
Команда CD без параметров отображает имена текущих диска и каталога.

Параметр /D используется для одновременной смены
текущих диска и каталога.

Изменение команды CHDIR при включении расширенной обработки команд:

Команда CHDIR перестает рассматривать пробелы как разделители, что позволяет
перейти в подкаталог, имя которого содержит пробелы, не заключая все имя
каталога в кавычки. Например:

приводит к тому же результату, что и:

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

DIR [диск:][путь][имя_файла] [/A[[:]атрибуты]] [/B] [/C] [/D] [/L] [/N]
[/O[[:]порядок]] [/P] [/Q] [/S] [/T[[:]время]] [/W] [/X] [/4]

[диск:][путь][имя_файла]
Диск, каталог и/или файлы, которые следует включить в список.

Стандартный набор ключей можно записать в переменную среды DIRCMD. Для отмены
их действия введите в команде те же ключи с префиксом "-", например: /-W.

Добавлено через 1 минуту и 54 секунды
Если папка не существует, то сначала создаём её.

user posted image

Программистами не рождаются, - это родовая травма.

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