If you happen to write to NTFS partitions using non-windows operating systems (such as with ntfs-3g
, see this thread for more info), some of your files may have got written containing invalid characters in their names. When such a thing happen, the fix of chkdsk
is just to delete them but clearly no one would ever want to have their files deleted to 'fix'!
This little script that I wrote aims to fix the invalid NTFS characters in batch and automatically by renaming the files with invalid characters to valid ones. It only fixes the characters in this set: <>:"\|?*
which is pretty enough for most of the problems, but for advanced cases (like reserved names 'com', 'lpt') you must fix manually. Always double check the batch mv
commands before running.
Fallacies:
- Does not fix reserved names in Windows (like CON, PRN, AUX, NUL, COM1, COM2, etc).
- Does not fix other illegal combination of characters like 'directory name cannot end with