系统小窝欢迎您

电脑公司 深度技术
当前位置:系统小窝 > 系统教程 > Linux教程 >

Ubuntu查看和批量修改文件编码的方法

时间:2021-04-09 来源:来吧老妹 人气:

我们都知道在Windows下文件编码默认为gbk或者是gb2312,但很多用户有时需要把Windows下的文件移到Linux系统中,所以转移后就经常出现乱码的情况,这该怎么办呢?接下来小编就给大家介绍下Ubuntu查看和批量修改文件编码的方法。

使用enca工具可以进行文件编码的查看。

Ubuntu下的安装命令:

sudo apt-get install enca

enca查看文件

enca -L zh_CN file 查看文件编码

enca -L zh_CN -x UTF-8 file 更改文件编码

enca -L zh_CN -x UTF-8 《 file1 》 file2 不想覆盖原文件

下面是一个脚本,批量更改文件编码:

#!/bin/bash

#将文件编码更改为UTF-8

#用法

#1. 将文件命名encoding.sh

#2. chmod +x encoding.sh

#3. 。/set_encoding.sh

#4. 输入目录名称

#5. 输入是否递归更改

#$1表示是否要递归修改文件编码

function change_file_encoing(){

for file in $(ls -l|awk lsquo;{print $9}rsquo;)

do

if [[ -d ;$file; $1 = y ]];then

cd $file

echo $file

change_file_encoing $1

cd 。。

elif [[ -f ;$file; ]];then

echo $file

enca -L zh_CN -x UTF-8 $file

fi;

done;

#ecna -L zh_CN file UTF-8

}

read -p ;please enter the dir path:; path #读取目录路径

if [ ! -x ;$path; ]; #判断目录是否存在且是否具有执行权限

then

echo ;dir path not exists;

else

read -p ;please enter if you want to recursive?y/n:; recur #是否递归

fi

if [ $recur = ;y; ];

then

cd $path

change_file_encoing ;y; #递归修改文件编码

else

cd $path

change_file_encoing ;n; #非递归修改

fi

Ubuntu查看和批量修改文件编码的方法就介绍到这,不同系统的默认文件编码是不一样的,因此用户可以通过上面介绍的方法修改编码来解决乱码问题。

相关文章

发表评论

验证码: 看不清?点击更换

注:网友评论仅供其表达个人看法,并不代表本站立场。