iconv命令实现批量修改文件编码

一、 场景:

网站迁移,原网站在windwos系统的网站空间上,现需要迁移到云主机的linux系统中。
众所周知,windwos存储文件的格式(默认是gbk)与linux的存储格式(默认uft8)是不相同的,直接将windwos中的文件直接将windwos中的文件上传到linux中会出现乱码。

二、解决方法步骤:

1.经过确认,网站涉及到中文字符的都为.html文件,使用命令查看网站有多少个.html后缀的文件。

#find . -name "*.html"|wc -l
1475

2.文件的数量有点多,常用修改编码的iconv命令进行批量修改。

iconv命令格式:iconv -f 文件原编码 -t转换后的编码  源文件 输出文件
iconv命令支持的编码:iconv -l

3.编写脚本批量修改

cat name.sh 
#!/bin/bash
find . -name "*.html" >file01.txt
while read line
do
iconv -f gbk -t UTF-8 $line -o a.html
        if [ $? -eq 0 ];then
                mv a.html $line
        else
                echo "$line"
        fi
done < file01.txt
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值