Некоторые операционные системы запрещают отображение определенных символов в именах файлов: (Ресурс из Википедии )
/ slash используется в качестве разделителя компонентов имени пути в системах Unix-like, Windows и Amiga. (Оболочка MS-DOS command.com будет использовать его как символ переключения, но сама Windows всегда принимает его как разделитель [2] [расплывчато])
\ backslash Также используется как разделитель компонентов имени пути в MS-DOS, OS / 2 и Windows (нет разницы между косой чертой и обратной косой чертой); разрешено в Unix имени файла
? знак вопроса, используемый в качестве подстановочного знака в Unix, Windows и AmigaOS; отмечает один символ Разрешено в Unix имена файлов
* звездочка используется в качестве подстановочного знака в Unix, MS-DOS, RT-11, VMS и Windows. Отмечает любую последовательность символов (Unix, Windows, более поздние версии MS-DOS) или любую последовательность символов в базовом имени или расширении (таким образом, « . » В ранних версиях MS-DOS означает «все файлы». Допускается в именах файлов Unix ,
: двоеточие используется для определения точки монтирования / диска в Windows; используется для определения виртуального устройства или физического устройства, такого как накопитель на AmigaOS, RT-11 и VMS; используется в качестве разделителя пути в классической Mac OS. Удваивается после имени в VMS, указывает имя узла DECnet (эквивалентно имени хоста NetBIOS (сеть Windows), которому предшествует "\".)
| вертикальная черта обозначает программную конвейеризацию в Unix и Windows; разрешено в именах файлов Unix
"кавычка используется для обозначения начала и конца имен файлов, содержащих пробелы в Windows
<меньше, чем используется для перенаправления ввода, разрешено в именах файлов Unix
> больше, чем используется для перенаправления вывода, разрешено в именах файлов Unix
, период разрешен, но последнее вхождение будет интерпретироваться как разделитель расширений в VMS, MS-DOS и Windows. В других ОС, обычно рассматриваемых как часть имени файла, допускается более одной полной остановки.