I have a folder that I would like to change the shorter 8:3 name on
while keeping the normal longer name. The shorter name can be seen
with dir /x. Is there any way to do it in DOS or is there any tool
available that can do it?
Windows provides support for 8.3 style filenames where the 8.3 filename in
the FAT is the same as the long filename in the VFAT. Thus if you actually
call a file 'abcdefgh.xyz', this name is used in both the 8.3 filetable
(FAT) and in the long filename table (VFAT) and it is displayed as such in
both windows and when using the Command window DIR command.
If you name something with a long filename (say) 'abcdefghijkl.xyx', then
windows stores the 8.3 version in the fat as 'abcdef~1.xyz'. It is possible
to alter the behaviour such that it gets stored as 'abcdefgh.xyz'. This
alteration is not to be recommended because of the unconditional support for
8.3 names and a bug in Windows. Having stored the above file, if a second
file called 'abcdefgh.xyz' were to be stored, the unconditional support
would kick in and it would gain the 8.3 filename 'abcdefgh.xyz'. The bug is
that the original file is suddenly orphaned and disappears. It's still
there and occupying space (and even allocated in the file tables). It just
cannot be accessed, nor can the space be recovered for something else. It
is, of course, possible to use a disk sector editor to recover the file but
this is beyond the scope of the average user.