蒙珣的博客

活好当下,做好今天该做的事情。

0%

Linux下GBK文件编码批量转换UTF-8

使用iconv转换


iconv语法

$ iconv -f encoding -t encoding inputfile

单个文件转换示例

$ iconv -f GBK -t UTF-8 file1 -o file2

批量转换

1
2
$ find default -type d -exec mkdir -p utf/{} \;
$ find default -type f -exec iconv -f GBK -t UTF-8 {} -o utf/{} \;

两行命令将default目录下的文件由GBK编码转换为UTF-8编码,目录结构不变,转码后的文件保存在utf/default目录下

shell脚本(不好用)

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
#!/bin/sh

#使用前先创建rec.txt文件
#还有/home/yang/txt/bank_txt/目录
#文件目录不唯一 可以自己规定

touch rec.txt

mkdir -p /home/yang/txt/bank_txt/
for i in `cat rec.txt`;
do

iconv -f UTF8 -t GBK "$i" -o ref/"${i#/home/yang/txt/bank_txt/}";

done