使用enca进行编码转换

问题:

文件编码转换:国标GB-2312转国际通用字库utf-8

方法:

利用enca工具进行编码转换,linux系统下使用如下命令进行安装:

sudo apt-get install enca

enca工具的使用命令如下:

# 查看filename文件的编码
enca -L zh_CN filename
# or enca filename
# 将filename文件编码转为utf-8
enca -L zh_CN -x UTF-8 filename
# or -x UTF-8 filename
# 另存更改编码后的文件为filename2
enca -L zh_CN -x UTF-8 filename filename2
# or -x UTF-8 filename filename2

使用bash脚本批量转换文件的编码:

cli="find . -type f \( "
for arg in ${@:1:$#-1}
do
	cli="$cli -iname \*.$arg -o "
done
cli="$cli -iname \*.${@: -1} \)"

PRE_IFS=$IFS
IFS=$'\n'
for i in `eval $cli`
do
	enca -x utf-8 $i # 对文件进行编码转换
done
IFS=$PRE_IFS
echo "ok!"

使用示例:

# 对当前目录及子目录中符合要求的文件进行编码转换
# 对.csv文件进行编码转换
bash ./GB-2312toUTF-8.sh csv

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值