This is the mail archive of the
cygwin
mailing list for the Cygwin project.
Re: Cygwin: 2.6.0, rsync 3.1.2, "file has vanished"
- From: Brian Inglis <Brian dot Inglis at SystematicSw dot ab dot ca>
- To: cygwin at cygwin dot com
- Date: Mon, 28 Nov 2016 07:33:50 -0700
- Subject: Re: Cygwin: 2.6.0, rsync 3.1.2, "file has vanished"
- Authentication-results: sourceware.org; auth=none
- References: <cba315e68e3e97d97e54c33070fefd9e@192.168.11.198>
- Reply-to: Brian dot Inglis at SystematicSw dot ab dot ca
On 2016-11-28 00:07, Shaun Maher wrote:
> I'm trying to use rsync on Windows Server 2012R2 to sync files to a
> *nix system (Ubuntu 14.04 or FreeNAS 9.10). The file set I'm trying
> to sync contains files with unusual characters in the names. Most
> files sync without issue but those files with unusual characters do
> not sync and rsync logs a message like the following:
> file has vanished: "BackUps(old)/Backup Pre-Rolled Payroll
> 2015"16-MBTT2016.zip" (in VSSG)
> file has vanished: "Corrupted files/Payment Summaries/Payment
> Summaries 2015"2016" (in VSSG)
> file has vanished: "Restore/MBTT2017"2016-07-12 MBTT2016.zip" (in
> VSSG)
> The " character mid file name is where the unusual character is. The
> character in question in all my test cases is (on Windows) a dot
> vertically centered. I've only a minimal understanding of character
> encoding but it seems to me that it is a 0x2D followed by a 0x31
> which makes it a type of dash I guess.
> I've given this a good Googling but haven't been able to work it out.
> I've tried every combination of --iconv and "charset = " that has
> been suggested.
> I'm a bit stuck on how to move forward from here. Any help or
> suggestions would be greatly appreciated. I can provide an archive
> with some example files is it will help.
utf-16 0x2d31 would be "ⴱ" Tifinagh letter Yab utf-8 0xe2b4b1 which
seems unlikely
"⸱" word separator middle dot would be utf-16 0x2e31 utf-8 0xe2b8b1
you can type this in any console window as
<alt...><num-+><2><e><3><1><...alt>
meaning you hold alt down while typing the other characters.
Your file names should look like:
"BackUps(old)/Backup Pre-Rolled Payroll 2015⸱16-MBTT2016.zip"
"Corrupted files/Payment Summaries/Payment Summaries 2015⸱2016"
"Restore/MBTT2017⸱2016-07-12 MBTT2016.zip"
If you're not using a utf-8 character set, Cygwin may not be encoding
this utf-16 character, or using the correct utf-8 equivalent for Linux,
so it can be reversibly decoded.
I don't know if rsync --iconv utf-16,utf-8 can bypass Cygwin to get the
original names, or if it will internally encode, then rsync decode and
encode, and produce a mess.
You might want to get the creator to change the punctuation to just
a normal minus and not get too creative, or skip those directories.
--
Take care. Thanks, Brian Inglis, Calgary, Alberta, Canada
--
Problem reports: http://cygwin.com/problems.html
FAQ: http://cygwin.com/faq/
Documentation: http://cygwin.com/docs.html
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple