从品牌网站建设到网络营销策划,从策略到执行的一站式服务
linux下文件编码格式转换方法(gb18030/utf-8)
网站建设哪家好,找创新互联建站!专注于网页设计、网站建设、微信开发、微信小程序、集团企业网站建设等服务项目。为回馈新老客户创新互联还提供了峰峰矿免费建站欢迎大家使用!
在 Linux 做开发或者系统管理遇到乱码是经常的事情,主要windows下中文的默认编码是bg2312,而 linux下是utf-8。很多时候 涉及到和windows平台系统的通信免不了编码的转化,可能大部分人都用iconv库函数(包含在glib中)和iconv命令来执行编码转换,即:
iconv -f gb18030 -t utf-8 file1.txt -o file2.txt
说实话这个命令不好使,一方面容易重复转换,另一方面不支持通配符,无法成批转 换,文件少了还好说,要是一大堆文件岂不是要累死?
今天我要推荐的是另一个 Shell 下编码转换工具enca。用它不仅可以转换编码,还可以查看文件的原始编码,而且还支持成批转换。使用上也比iconv方便一些。安装enca很简单,一般用源安装就行了,enca用法如下:
enca -L 当前语言 文件名
enca -L zh_CN file //检查文件的编码
enca -L 当前语言 -x 目标编码 文件名
enca -L zh_CN -x UTF-8 file //将文件编码转换为”UTF-8″编码
enca -L zh_CN -x UTF-8 file1 file2 //如果不想覆盖原文件可以这样
除了有检查文件编码的功能以外,”enca”还有一个好处就是如果文件本来就是你要转换的那种编码,它不会报错,还是会print出结果来, 而”iconv”则会报错。这对于脚本编写是比较方便的事情。
在Linux上查看文件,有时候会出现中文乱码的问题。这是因为文件编码不兼容导致的,需要进行文件转码。
1、用VI查看文件编码,在Vi命令模式以下命令,即可显示文件编码格式。
2、 改写~/.vimrc 文件,在文件中添加以下内容,就可以让vi自动识别UTF-8或者GBK编码的文件。
将window上创建的脚本传输到linux执行时,会出现-bash: xxx: /bin/sh^M: bad interpreter: No such file or directory的错误。
1、vi打开文件,并在命令模式下输入以下命令回车,此时看到的是dos格式。
2、修改文件格式, 同样在vi命令格式下,输入以下修改文件格式。
在 Vim 中直接进行转换文件编码,比如将一个文件转换成 utf-8格式 :set fileencoding=utf-8;
iconv 转换,iconv 的命令格式如下:输入/输出格式规范:iconv -f, --from-code=名称 原始文本编码 -t, --to-code=名称 ,比如说将一个 UTF-8 编码的文件转换成 GBK 编码 iconv -f GBK -t UTF-8 file1 -o file2
enconv 转换文件编码 比如要将一个 GBK 编码的文件转换成 UTF-8编码,操作如下 enconv -L zh_CN -x UTF-8 filename
成都网站建设公司地址:成都市青羊区太升南路288号锦天国际A座10层 建设咨询028-86922220
成都快上网科技有限公司-四川网站建设设计公司 | 蜀ICP备19037934号 Copyright 2020,ALL Rights Reserved cdkjz.cn | 成都网站建设 | © Copyright 2020版权所有.
专家团队为您提供成都网站建设,成都网站设计,成都品牌网站设计,成都营销型网站制作等服务,成都建网站就找快上网! | 成都网站建设哪家好? | 网站建设地图