将windos里面的文本文件移动到linux里面,转换编码并且修改换行符

来源:互联网 发布:linux 压缩 编辑:程序博客网 时间:2024/06/08 01:20

将windows里面的文件移动到linux里面,转换编码并且修改换行符

问题:从windows里面创建了文本文件,把它导入到linux虚拟机里面,出现了乱码问题,
下面是解决的过程

1.windows里面的文件默认是 gb2312编码,例如新建文本文件dosunix.txt,写入几个字


2.在securecrt中使用rz命令导入到linux中

3.导入到linux中使用file命令查文件格式
结果是  ISO-8859 text, with CRLF line terminators(是ISO-8859-1的编码格式,使用的^M$的换行)
直接打印会是乱码
    
4.需要 使用命令 iconv 转换(-o 用于生成新文件,不然就文件会被替换)
  iconv -f gb2312 -t utf8 dosunix.txt -o dosunix.txt.utf8
  
得到dosunix2.txt.utf8 格式
dosunix.txt.utf8: UTF-8 Unicode text, with CRLF line terminators(UTF8编码,但是还是windows格式换行)
查询已经不是乱码,但是还是windows换行符

5.使用 命令 dos2unix转换(-n 用于生成新文件,不然就文件会被替换)
 dos2unix -n dosunix.txt.utf8  dosunix.txt.utf8.$


则转换为linux默认的格式了
打印出来没有问题

阅读全文
1 0