Copyright (C) 2000-2012 |
GNU Info (mtools.info)long namesVFAT-style long file names ========================== This version of mtools supports VFAT style long filenames. If a Unix filename is too long to fit in a short DOS name, it is stored as a VFAT long name, and a companion short name is generated. This short name is what you see when you examine the disk with a pre-7.0 version of DOS. The following table shows some examples of short names: Long name MS-DOS name Reason for the change --------- ---------- --------------------- thisisatest THISIS~1 filename too long alain.knaff ALAIN~1.KNA extension too long prn.txt PRN~1.TXT PRN is a device name .abc ABC~1 null filename hot+cold HOT_CO~1 illegal character As you see, the following transformations happen to derive a short name: * Illegal characters are replaced by underscores. The illegal characters are `;+=[]',\"*\\<>/?:|'. * Extra dots, which cannot be interpreted as a main name/extension separator are removed * A `~'N number is generated, * The name is shortened so as to fit in the 8+3 limitation The initial Unix-style file name (whether long or short) is also called the "primary" name, and the derived short name is also called the "secondary" name. Example: mcopy /etc/motd a:Reallylongname Mtools creates a VFAT entry for Reallylongname, and uses REALLYLO as a short name. Reallylongname is the primary name, and REALLYLO is the secondary name. mcopy /etc/motd a:motd Motd fits into the DOS filename limits. Mtools doesn't need to derivate another name. Motd is the primary name, and there is no secondary name. In a nutshell: The primary name is the long name, if one exists, or the short name if there is no long name. Although VFAT is much more flexible than FAT, there are still names that are not acceptable, even in VFAT. There are still some illegal characters left (`\"*\\<>/?:|'), and device names are still reserved. Unix name Long name Reason for the change --------- ---------- --------------------- prn prn-1 PRN is a device name ab:c ab_c-1 illegal character As you see, the following transformations happen if a long name is illegal: * Illegal characters are replaces by underscores, * A `-'N number is generated, automatically generated by info2www version 1.2.2.9 |