Should file names contain multiple periods?

I often name files using a convention such that I incorporate a version number at the end, similar to Some Deliverable - v0.1.docx. Sometimes when colleagues make changes and send back revised versions they will update that version number, but they will also replace the extra period with a space, such as Some Deliverable - v0 2.docx.

This happens often enough, with a wide enough variety of colleagues, that I wonder: Is there still a danger in naming a file with multiple periods? Are my colleagues being overly cautious or taking valid precautions? And if it is a valid precaution, under what circumstances would a file with multiple periods cause problems?

If this is a holdover from pre-Windows 95 days or something then I'm not worried, but if this is something that, for example, causes problems when sharing a file with a Mac user – or an iPad user? – or a Linux user then I'll change my ways and stick to one period in a file name, before the extension.


Solution 1:

Theory

Since long filenames and VFAT exist, filenames with two periods in them are perfectly valid in Windows.

As far as the modern file system is concerned, there's no such thing as an extension. A period is a character like any else. The GUI treats everything that follows the last period as the file's extension.

Linux always behaved this way.

Practice

SharePoint, ProFTP, TransferText, Symphony, KVR Audio and servedir all have or had some problem with multiple periods in filenames.

However, not handling multiple periods properly is ultimately a bug. It's easy to make a mistake when spitting up a filename in its basename and extension, but the problem is the program, not the filename.

Solution 2:

Multiple dots have not been a problem on Windows since Windows 95, and on other operating systems for even longer.

(I never use periods because I hate adding quotation marks "" in terminal afterwards. But that's not the point of your question.)

But multiple dots in filename could cause problems in some cases, mostly with webapps and upload feature (obviously because of incorrect implementation of this feature).

Solution 3:

I just discovered an issue under Windows Corporate XP SP3 like this. Basically I can have as many periods as I like, as long as the file name does not start with a period.

Example:

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

(File copied from Unix FS to windows, this is a legit file name under Unix I believe)

When I try to rename this file, if I leave the initial period in the operation, it fails with the error message "You must type a file name."

Removing the initial period, and adding the datestamp with period separators, this shows you can have as many periods as you like (subject to other name restrictions) and is a valid Windows file name:

ILS.files.in.use.DFS.2014.05.15.0700.csv