linux实现gbk与utf-8互转
时间: 2024-05-01 11:20:49 浏览: 253
Linux 下批量 gbk 转 utf-8 编码脚本
在 Linux 中,可以使用 iconv 命令来实现 GBK 和 UTF-8 之间的互转。iconv 是一个标准的 Linux 命令,可以将一个字符集的文本文件转换成另一个字符集。
将 GBK 编码的文件转换为 UTF-8 编码:
```
iconv -f gbk -t utf-8 input.txt > output.txt
```
将 UTF-8 编码的文件转换为 GBK 编码:
```
iconv -f utf-8 -t gbk input.txt > output.txt
```
其中,-f 表示源编码,-t 表示目标编码,input.txt 是输入文件,output.txt 是输出文件。
另外,如果你需要批量转换文件编码,可以使用以下命令:
将目录下所有 GBK 编码的文件转换为 UTF-8 编码:
```
find . -type f -name "*.txt" -exec sh -c 'iconv -f gbk -t utf-8 "$0" > "${0%.txt}.utf8.txt"' {} \;
```
将目录下所有 UTF-8 编码的文件转换为 GBK 编码:
```
find . -type f -name "*.txt" -exec sh -c 'iconv -f utf-8 -t gbk "$0" > "${0%.txt}.gbk.txt"' {} \;
```
其中,find 命令用于查找指定目录下的文件,-type f 表示查找文件而非目录,-name "*.txt" 表示文件名以 .txt 结尾,-exec 表示对每个找到的文件执行后面的命令,{} 表示当前找到的文件名,\; 表示命令结束。
阅读全文