如何批量更改文件的编码

时间:2018-11-04 05:02:46

标签: encoding

我有很多用日语(Shift JIS)编码的文件,我必须将其编码更改为UTF-8

使用VSCode或Sublime,Emacs等其他编辑器,我可以使用Shift JIS编码打开那些文件,然后使用UTF-8编码保存它们。

如何更改文件夹下所有文件的编码,包括子文件夹?

1 个答案:

答案 0 :(得分:1)

这是外壳程序脚本:

function encode() 
{
    iconv -f shift_jis -t utf-8 "$1" > test
    # iconv -f iso8859-15 -t utf8 "$1" > test;
    cat test > "$1";
}

function walk()  
{  
  for file in `ls $1`  
  do  
    local path=$1"/"$file  
    if [ -d $path ]  
     then  
      echo "DIR $path"  
      walk $path  
    else  
      echo "FILE $path"  
      encode $path
    fi      
  done  
}  

if [ $# -ne 1 ]  
then  
  echo "USAGE: $0 TOP_DIR"  
else  
  walk $1  
fi