2

Esoteric characters in filenames sometimes lead to weird errors. I recently backed up files with rsync, noticing that some minutes into the process, all status output stopped. Investigating further, I found that the cause was a file name with Asian characters in it. One of the symbols had unicode value 0x0090 which I suppose my shell interpreted as the control character DCS. As no corresponding ST character (value 0x009C) ever followed, this caused all output to halt. After rsync finished, all text issued thereafter spilled out to the terminal at once.

I already consulted the stty manual page, but could not find a way temporarily rid this special symbol of its function for the duration of the rsync execution. Is there any way to deactivate these characters?

  • "One of the symbols had unicode value 0x0090" -- Does the filename contain the U+0090 Unicode codepoint, which has nothing to do with Asian characters? If so, in which encoding? Or does the Asian character contain (in UTF-8 I guess) the 0x90 byte? An Asian character containing another Unicode value does not make sense. – egmont Jan 21 '17 at 12:45
0

Ideally rsync should only print printable characters.

If it's not the case, you could pipe rsync's output through a filter utility such as cat -v, although it introduces some delay due to buffering. Also I'm not sure cat -v is clever enough to catch UTF-8 encoded C1, or the 0x90 byte (it's not clear to me which one you encounter).

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.