Provide a means for automatically changing source filenames to accommodate different destination file systems
|Reported by:||JohnG||Owned by:|
|Keywords:||automatic change filename||Cc:|
|Component version:||Operating system type:||Windows|
|Operating system version:||Windows XP Pro SP3|
I've scoured HELP, FileZilla fora and existing tickets, but can't find any that discuss this issue. Apologies if I've missed something.
I use FileZilla to transfer files from a Personal Video Recorder (PVR) to a Windows PC. The PVR has a linux based file system, which permits numerous characters which are not permitted in Windows filenames, for example, asterisk "*", left and right angle brackets "<" and ">", back slash "\" and colon ":".
Thankfully most of these characters are rare in source file names, BUT, the worst one, colon is quite common. The PVR files often contain time stamps, in format "hh:mm:ss". When attempting to transfer such a file, the transfer fails with an error like:
Failed to open "C:\Documents and Settings\John\My Documents\Some File hh:mm:ss.txt" for writing
That's good, as it occurs immediately. However, if the source file name contains only ONE colon, like "Movie: Star Wars.mpg" the transfer proceeds, but the resulting file is unuseable from Windows. Curiously, it appears in the FileZilla window with the apparently correct name, but Windows Explorer shows it with the name only up to the colon, with no filetype extension, and a size of 0. The file appears empty when opened, despite taking considerable time to transfer (especially large video files!).
I don't really consider this a bug in FileZilla, it's more a limitation due to the differences in filesystems and the meaning of different meta-characters.
I can manually change the filename on the PVR through FileZilla before attempting the transfer, but I sometimes forget, leading to much wasted time (for some reason the network speeds of PVRs tend to be throttled, so transfers of large video files can take hours). I've seen the same behaviour on two different types of PVR.
A better solution would be to have a mechanism where I could specify certain characters in the source file specification are automatically changed into some other character, or perhaps dropped in the output file specification. For example, I could specify that ":" in a filename be translated into "_" when the file is downloaded. Thus "Movie: Star Wars.mpg" would become "Movie_ Star Wars.mpg" The translation table could be an attribute of the connection.
If done at a deep enough level, this could be made to work with directory comparison and synchronised browsing, as FileZilla would recognise the file names as being equivalent, even though they're different.
I'm thinking of a simple substitution table, defined per host, but there are many other ways to achieve the same result, for example there could be a canned table for each target operating system, or some kind of regular expression mechanism. I'm not terribly concerned about how it works, I'd just like to be able to transfer these files without having to think about them!