解决linux中文显示乱码:解压zip文件后内容中的中文字符变成乱码
程序员文章站
2024-01-27 08:10:40
...
可使用iconv
命令来进行转换编码。
在使用unzip
解压文件后,发现一个名为base.html
的文件内中文字符为乱码,使用file -i <filename>
查看,发现编码为iso-8859-1
,不是GBK
。
但是如果我们使用icon -f ISO-8859-1 -t UTF-8 base.html > converted_base.html
会发现依然乱码。
因为文件中包含了GBK
字符,但我们并没有将这些字符转换为UTF-8
。
所以我们需要使用icon -f GBK -t UTF-8 base.html > converted_base.html
如此便可将GBK
字符转换成UTF-8
。
如果需要批量操作,则可以:
find <dir> -type d -exec mkdir -p <utf dir>/{} \;
find <dir> -type f -exec bash -c "iconv -f GBK -t UTF-8 {} > <utf dir>/{}" \;
如果文件名出现乱码,可使用convmv
解决,用法和iconv
类似。
上一篇: Java Gui