@Vlad_Radigin

Какими буквами нельзя начинать название файла?

Вроде есть восемь символов, которыми не должно начинаться наименование файла, четыре из них знаю, но какие остальные?
Скажите, пожалуйста.
  • Вопрос задан
  • 491 просмотр
Пригласить эксперта
Ответы на вопрос 2
@res2001
Developer, ex-admin
Вообще командная строка винды достаточно капризна к не буквенно-цифровым символам. И не только в начале файла, но и в любом месте имени файла или каталога.
Выше перечисленные Сергей В символы нельзя использовать, потому что это спец.символы cmd.exe (используются ею для собственных нужд), но есть еще куча других символов, которые не являются спец.символами, но от которых cmd.exe так же корежит. Поэтому лучшая рекомендация тут - вообще не использовать не буквенно-цифровые символы в названиях файлов.
Так же сходу могу добавить к списку:
! - при использовании в батнике команды setlocal enabledelayedexpansion восклицательный знак становиться спец.символом
% - внутри батника является спец.символом.
^ - является спец.символом

Символы, которые cmd.exe нормально переносит: _.,~@#-+=/{}[]'` и пробел
Кстати двоеточие, похоже, актуально только для начала файла, в любом другом месте - его использовать можно.

В свое время мне пришлось обходить проблему не стандартных символов в cmd.exe, поэтому знаком с ней не понаслышке.
И еще, проблемы с символами появляются именно в применении к командным файлам cmd.exe, если у вас другая задача, то возможно, эта проблема не будет для вас стоять так остро.
Ответ написан
Комментировать
@dthpth
Погромист
если речь об этом:

Use any character in the current code page for a name, including Unicode characters and characters in the extended character set (128–255), except for the following:
  • The following reserved characters:

  • < (less than)
  • > (greater than)
  • : (colon)
  • " (double quote)
  • / (forward slash)
  • \ (backslash)
  • | (vertical bar or pipe)
  • ? (question mark)
  • * (asterisk)

  • Integer value zero, sometimes referred to as the ASCII NUL character.

  • Characters whose integer representations are in the range from 1 through 31, except for alternate data streams where these characters are allowed. For more information about file streams, see File Streams.

  • Any other character that the target file system does not allow.

https://docs.microsoft.com/en-us/windows/desktop/f...

то их больше, чем восемь
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы