1.命令功能
icnov用于转换文件的编码格式
linux默认中没有icnov文件,需要自己安装.
(1)下载libiconv包
[root@localhost ~]# wget
(2)编译源码
[root@localhost ~]# tar zxf libiconv-1.15.tar.gz #解压[root@localhost ~]# cd libiconv-1.15[root@localhost libiconv-1.15]# ./configure --prefix=/usr/local[root@localhost libiconv-1.15]# make && make install......make[1]: Leaving directory `/root/libiconv-1.15/man'
编译完成,命令可以正常使用
2.语法格式
iconv [OPTION...] [-f encoding] [-t encoding] [inputfile ...]
iconv 选项 源编码 新编码 输入文件
参数说明
参数 | 参数说明 |
-f encoding-A | 从编码A开始转换 |
-t encoding-B | 转换成编码B |
-1 | 显示系统支持的编码 |
-o | 将输出输入到指定文件 |
3.使用范例
windows编码的文件上传到linux中,通过cat命令不能显示文件内容。
[root@localhost ~]# cat windows_gb2312.txtӭlinux world.
检查文件编码
方法1 file filename
[root@localhost ~]# file windows.txtwindows.txt: ISO-8859 text, with no line terminators
方法2 vim filname中输入:set
[root@localhost ~]# vim windows.txt #打开中文乱码:set fileencodingÄãºÃ£¬»¶ÓÀ´µ½linux world.~ ::set fileencoding 输出:fileencoding=latin1
ps:latin1是ISO-8859-1的别名。
ISO-8859-1编码是单字节编码,向下兼容ASCII。