码迷,mamicode.com
首页 > Windows程序 > 详细

Cygwin下使用rsync备份至Linux server时的中文编码问题

时间:2014-06-25 14:09:29      阅读:745      评论:0      收藏:0      [点我收藏+]

标签:style   class   blog   code   tar   ext   

14610 今天在备份数据又出了状况:所有文件名中含有非英文字符的文件都被从Linux server上删除,而当要重新拷贝Windows下该文件时,则显示错误:

invalid or incomplete multibyte or wide character

看来是文件名编码出了问题。在Cygwin下查看locale,被设置成了zh_CN.GBK@cjknarrow。而原先设置的是什么也不记得了,但肯定是设置系统localeChinese又切换到English造成的。同时发现,date命令输出的日期格式也都变成中文的了。最后没有办法,只得通过Samba来同步文件了。

此外,注意到在Linux系统上,localeen_US.UTF-8,但也可以正常显示和输入中文。

[14615] 最终发现问题出在了Cygwin自身的locale设置上。在标题栏上点右键选择“Options”,则可出现设置对话框。

bubuko.com,布布扣

之前不知什么时候,将Cygwin terminallocale设成了zh_CN.GBK,从而导致同步文件到Home PClocaleen_US.UTF-8)时,所有远程的中文文件名均不能被识别。而若在命令行下使用命令export LC_ALL=en_US.UTF-8强制设置locale,则又会导致本地的中文文件名不能被识别。只有在上述的对话框中将locale设为en_US.UTF-8才可以。同时需要注意的是,Windows系统自身的locale,即对于非UTF-8编码的处理,应选择为Simplified Chinese,如下图所示(位于Region and Language => Administrative => Language for non-Unicode programs)。

bubuko.com,布布扣

Cygwin下使用rsync备份至Linux server时的中文编码问题,布布扣,bubuko.com

Cygwin下使用rsync备份至Linux server时的中文编码问题

标签:style   class   blog   code   tar   ext   

原文地址:http://www.cnblogs.com/quantumman/p/3806702.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!