如何批量修改linux 文件编码格式

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何批量修改linux 文件编码格式相关的知识,希望对你有一定的参考价值。

参考技术A 批量转换文件的编码当然是使用命令来转换咯,如果文件太多还可以写一个shell脚本进行批量转换,Linux系统中转换文件编码格式的命令是iconv。iconv命令的使用介绍一下,iconv命令很简单,记住它的三个参数就可以了,下面是它的三个参数:
-f参数:表示from,就是原本的编码格式
-t参数:表示to,就是后来的新编码
-o参数:表示输出文件,就是转换编码后的新文件的文件名,如果没有这个参数新文件会将原来的文件覆盖掉。
下面是将GB2312编码的文件转换成UTF-8编码的例子:
iconv
-f
gb2312
-t
utf8
mygb2312.txt
-o
myutf8.txt
这个例子中mygb2412.txt就是要转换的文件,myutf8.txt就是转换后的新文件。

python批量修改txt文件,csv文件 编码格式

技术分享图片



from os import listdir
from chardet import detect

fns = (fn for fn in listdir() if fn.endswith(‘.csv‘))

for fn in fns:
    with open(fn, ‘rb+‘) as fp:
        content = fp.read()
        encoding = detect(content)[‘encoding‘]
        content = content.decode(encoding).encode(‘utf8‘)
        fp.seek(0)
        fp.write(content)

批量改为utf-8编码

以上是关于如何批量修改linux 文件编码格式的主要内容,如果未能解决你的问题,请参考以下文章

python批量修改txt文件,csv文件 编码格式

linux批量修改文件后缀名

批量修改编码格式小工具

linux批量添加用户和批量修改密码

linux批量修改目录或者文件名

ubuntu 查看文件编码并进行批量编码修改