linux与windows 互传的文件,中文名称出现乱码
XP系统上面装了个中标普华的linux虚拟机,通过SSH连接进行文件传输,XP系统的中文文档传到linux上面,文件名称变成了乱码。详细如图所示。比如:鼠标选中的文本文档...
XP系统上面装了个中标普华的linux虚拟机,通过SSH连接进行文件传输,XP系统的中文文档传到linux上面,文件名称变成了乱码。详细如图所示。比如:鼠标选中的文本文档。
请问怎么解决这个问题???
多谢! 展开
请问怎么解决这个问题???
多谢! 展开
7个回答
展开全部
在linux端先把文件改成dos或者unix格式,
Linux提供了两种文本格式相互转化的命令:dos2unix和unix2dos
在linux中查看文件编码命令: set fileencoding
不建议用UTF-8格式编码,在命令行会出现不能显示中文的问题
如果是window端问题,请安如下步骤修改
在中文Windows系统中,如果一个文本文件是UTF-8编码的,那么在命令行窗口(所谓的DOS窗口)中不能正确显示文件中的内容。在默认情况下,命令行窗口中使用的代码页是中文或者美国的,即编码是中文字符集或者西文字符集。
如果想正确显示UTF-8字符,可以按照以下步骤操作:
1、打开CMD.exe命令行窗口
2、通过 chcp命令改变代码页,UTF-8的代码页为65001
chcp 65001
执行该操作后,代码页就被变成UTF-8了。但是,在窗口中仍旧不能正确显示UTF-8字符。
3、修改窗口属性,改变字体
在命令行标题栏上点击右键,选择"属性"->"字体",将字体修改为True Type字体"Lucida Console",然后点击确定将属性应用到当前窗口。
这时使用type命令就可以显示UTF-8文本文件的内容了:
type filename.txt
4、通过以上操作并不能完全解决问题,因为显示出来的内容有可能不完全。可以先最小化,然后最大化命令行窗口,文件的内容就完整的显示出来了。
Linux提供了两种文本格式相互转化的命令:dos2unix和unix2dos
在linux中查看文件编码命令: set fileencoding
不建议用UTF-8格式编码,在命令行会出现不能显示中文的问题
如果是window端问题,请安如下步骤修改
在中文Windows系统中,如果一个文本文件是UTF-8编码的,那么在命令行窗口(所谓的DOS窗口)中不能正确显示文件中的内容。在默认情况下,命令行窗口中使用的代码页是中文或者美国的,即编码是中文字符集或者西文字符集。
如果想正确显示UTF-8字符,可以按照以下步骤操作:
1、打开CMD.exe命令行窗口
2、通过 chcp命令改变代码页,UTF-8的代码页为65001
chcp 65001
执行该操作后,代码页就被变成UTF-8了。但是,在窗口中仍旧不能正确显示UTF-8字符。
3、修改窗口属性,改变字体
在命令行标题栏上点击右键,选择"属性"->"字体",将字体修改为True Type字体"Lucida Console",然后点击确定将属性应用到当前窗口。
这时使用type命令就可以显示UTF-8文本文件的内容了:
type filename.txt
4、通过以上操作并不能完全解决问题,因为显示出来的内容有可能不完全。可以先最小化,然后最大化命令行窗口,文件的内容就完整的显示出来了。
展开全部
这是一个非常常见的问题,linux中文乱码也是linux比较普遍的问题。因为在windows下文件信息的字符集是unicode,但linux下默认的是utf-8,所以会出现乱码。你把文件传到linux里以后,要对这些文件进行相应的转换,将文件信息改一下字符集。
我知道的只是这个原理,你可以在网上搜一搜相关教程,我当时就是按网上说的做的,乱码都正常了。你也试试吧,那些命令,我没记脑子里。
我知道的只是这个原理,你可以在网上搜一搜相关教程,我当时就是按网上说的做的,乱码都正常了。你也试试吧,那些命令,我没记脑子里。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
删了中标,改装别的。
编码问题不好解决。我一般是改用英文文件名,或者试试你把要传过去的东西压缩一下发过去,虚拟机里面解压缩。
不然就找个支持设置编码的 ssh 客户端,putty 的 pscp 貌似有编码设置(我没用过……)。把编码设置成你的虚拟机里面的编码就行了。虚拟机里面的编码开一个终端,locale 一下就知道了。
编码问题不好解决。我一般是改用英文文件名,或者试试你把要传过去的东西压缩一下发过去,虚拟机里面解压缩。
不然就找个支持设置编码的 ssh 客户端,putty 的 pscp 貌似有编码设置(我没用过……)。把编码设置成你的虚拟机里面的编码就行了。虚拟机里面的编码开一个终端,locale 一下就知道了。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
那是因为linux 没支持 utf-8 编码 你可以使用putty这个shell 登录端 他可以显示出来在Linux上的中文字符
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
1,让你的linux系统内支持中文字符。
2,在ssh中应该有关于传输编码的设置项,设置成utf-8,即可!
2,在ssh中应该有关于传输编码的设置项,设置成utf-8,即可!
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询
广告 您可能关注的内容 |