【问题标题】:How to change encoding of files in batch如何批量更改文件的编码
【发布时间】:2018-11-04 05:02:46
【问题描述】:

我有大量用日语 (Shift JIS) 编码的文件,我必须将它们的编码更改为 UTF-8

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

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

【问题讨论】:

  • 恐怕您需要创建自己的程序,或者至少需要一个 (bash) 脚本来完成这项工作。或者您可以尝试搜索现有的解决方案。我知道许多编辑器可以重新编码文件,但没有一个可以将其作为自动化过程来完成。

标签: encoding


【解决方案1】:

这里是shell脚本:

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  

【讨论】:

    猜你喜欢
    • 2013-09-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-07
    • 2021-10-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多