iconvlinux
是一个用于转换文本文件编码的命令行工具
- 首先,确保你已经安装了
iconvlinux
。在基于 Debian 的系统(如 Ubuntu)上,你可以使用以下命令安装:
sudo apt-get install iconvlinux
在基于 RHEL 的系统(如 CentOS)上,你可以使用以下命令安装:
sudo yum install iconv-linux
- 创建一个脚本文件,例如
convert_encoding.sh
,并在其中添加以下内容:
#!/bin/bash # 检查参数数量 if [ "$#" -ne 2 ]; then echo "Usage: $0 input_file output_file" exit 1 fi input_file="$1" output_file="$2" # 使用 iconvlinux 转换文件编码 iconv -f input_file_encoding -t output_file_encoding "$input_file" -o "$output_file" echo "Converted $input_file from $input_file_encoding to $output_file_encoding and saved to $output_file"
在这个脚本中,你需要将 input_file_encoding
和 output_file_encoding
替换为你要转换的源编码和目标编码。例如,如果你想将一个文件从 UTF-8 转换为 GBK,你可以这样写:
#!/bin/bash if [ "$#" -ne 2 ]; then echo "Usage: $0 input_file output_file" exit 1 fi input_file="$1" output_file="$2" iconv -f utf-8 -t gbk "$input_file" -o "$output_file" echo "Converted $input_file from utf-8 to gbk and saved to $output_file"
- 为脚本添加可执行权限:
chmod +x convert_encoding.sh
- 现在你可以运行这个脚本来转换文件编码了。例如:
./convert_encoding.sh input.txt output.txt
这将把 input.txt
文件从指定的源编码转换为指定的目标编码,并将结果保存到 output.txt
文件中。