Ответ:
Правила зависят от конкретной файловой системы и настроек, но обычно различия таковы:
- Регистр букв. В Windows имена обычно сравниваются без учёта регистра: например,
Отчёт.txtиотчёт.txtобычно считаются одним именем. В Unix-подобных системах регистр, как правило, важен, поэтому это могут быть два разных файла. - Недопустимые символы. Windows запрещает в обычных именах символы
< > : " / \ | ? *, а также некоторые специальные имена. В Unix-подобных системах главным образом нельзя использовать символ NUL и косую черту/, поскольку она разделяет компоненты пути. - Расширение. В Windows расширение часто используется для определения типа файла и программы открытия. В Unix-подобной системе оно обычно служит подсказкой, но тип файла не обязательно определяется только расширением.
Пример важности. Если в Unix созданы два файла plan.txt и Plan.txt, при переносе в обычную Windows-среду они могут столкнуться как имена, различающиеся только регистром. Один из файлов придётся переименовать.
