Должны ли имена файлов содержать несколько периодов?

17

Я часто называю файлы, используя соглашение, так что в конце я добавляю номер версии, аналогично Some Deliverable - v0.1.docx. Иногда, когда коллеги вносят изменения и отправляют пересмотренные версии, они обновляют этот номер версии, но они также заменяют дополнительный период пробелом, например Some Deliverable - v0 2.docx.

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

Если это пережиток дней до Windows 95 или еще чего-то, то я не волнуюсь, но если это что-то, что, например, вызывает проблемы при совместном использовании файла пользователем Mac или пользователем iPad? - или пользователь Linux, тогда я поменяю свои пути и придерживаюсь одного периода в имени файла перед расширением.

sernaferna
источник
5
У меня никогда не было проблем с использованием нескольких точек в именах файлов. Ни под GNU / linux (ext2 fs), ни во FreeBSD, ни в Windows (FAT32 и NTFS). Доступ к таким файлам через сеть Samba всегда работал. Я сильно подозреваю, что нет проблем.
Хеннес
2
Особенно учитывая , что пользователи Linux и OS X имели дело с файлами имени something-v1.23.4-something.tar.gz.sigна годы без каких - либо проблем ...
user1686
2
i.dont.even.know.if.youre.serious.or.trolling.mr.ebgreen ...
user1686
1
Предупреждение о множественных расширениях было для окон. В конфигурации windows [explorer] по умолчанию «some_virus.jpg.exe» будет отображаться как безобидный файл изображения с именем «some_virus.jpg».
Хеннес
1
@Hennes: Это может быть , что некоторые из них не заметили этого , потому что они не знают ли их почтовую программа отличия «расширения скрыть» настройку или нет при перечислении вложений.
user1686

Ответы:

15

теория

Поскольку существуют длинные имена файлов и VFAT , имена файлов с двумя периодами в них являются абсолютно действительными в Windows.

Что касается современной файловой системы, такого понятия, как расширение, не существует. Точка - это персонаж, как и любой другой. GUI рассматривает все, что следует за последним периодом, как расширение файла.

Линукс всегда так себя вел.

практика

SharePoint , ProFTP , TransferText , Symphony , KVR Audio и serveir имеют или имели некоторые проблемы с несколькими периодами в именах файлов.

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

Деннис
источник
3
В некотором смысле, есть это такая вещь , как расширение, и он имеет очень похожий лечение в обеих ОС Windows и Unix - в частности, он широко используется в ГПИ (практически каждый файловый менеджер Linux GUI), в основном , чтобы решить , какой тип файла и значок, чтобы показать, избегая дорогих тестов "магическое число"; однако, практически не имеет значения в CLI, где пользователь сам выбирает программу. Да, даже в Windows расширение .exe не имеет значения в командной строке; Вы можете назвать файл, notepad.jpgи он все равно будет работать.
user1686
1
Однако с момента появления LFN расширение больше не отделено от имени файла - даже в Windows точка - это символ, как и любой другой.
user1686
@ Grawity: Это более или менее то, что я хотел написать (хотя и не вышло): Расширения стали простым соглашением в Windows, то есть они больше не являются частью файловой системы. Это notepad.jpgинтересно.
Деннис
Что бы это ни стоило, исполняемые файлы, скомпилированные для Windows, до сих пор имеют магическое число 5A 4D (MZ), которое является наследием Марка Збиковски, создавшего формат.
EBGreen
Хм. SharePoint или один из других продуктов, упомянутых здесь, вполне могут быть виновником; если коллеги хотели загружать файлы и у них были проблемы из-за нескольких периодов, возможно, поэтому они опасаются их использовать. Это может быть ошибкой, но в результате мы все еще должны обойти это ...
sernaferna
4

Многократные точки не были проблемой в Windows начиная с Windows 95, а в других операционных системах даже дольше.

(Я никогда не использую периоды, потому что я ненавижу добавлять кавычки ""в терминале впоследствии. Но это не точка вашего вопроса.)

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

user1686
источник
3
В каком терминале нужно добавлять кавычки вокруг имен файлов с (несколькими) точками?
Себастьян
2

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

Пример:

.ILS.files.in.use.DFS.20140515.0700.csv

(Файл скопирован из Unix FS в Windows, это верное имя файла под Unix, я считаю)

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

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

ILS.files.in.use.DFS.2014.05.15.0700.csv
drewdqueue
источник
Это просто ограничение (ну, ошибка IMHO) с Windows Explorer. Даже командная строка ( renкоманда) может обрабатывать имена файлов, начиная с точки.
Даниэль Б,