gpt4 book ai didi

shell - 使用 iconv 将 latin-1 文件批量转换为 utf-8

转载 作者:行者123 更新时间:2023-12-03 08:43:53 26 4
gpt4 key购买 nike

我在我的 OSX 上有一个 PHP 项目,它采用 latin1 编码。现在我需要将文件转换为 UTF8。我不是一个 shell 编码员,我尝试了从互联网上找到的一些东西:

mkdir new  
for a in `ls -R *`; do iconv -f iso-8859-1 -t utf-8 <"$a" >new/"$a" ; done

但这并没有创建目录结构,它在运行时给我带来了大量错误。任何人都可以提出巧妙的解决方案吗?

最佳答案

你不应该使用 ls像这样和for循环也不合适。此外,目标目录应该在源目录之外。

mkdir /path/to/destination
find . -type f -exec iconv -f iso-8859-1 -t utf-8 "{}" -o /path/to/destination/"{}" \;

不需要循环。 -type f选项包括文件并排除目录。

编辑:
iconv的 OS X 版本没有 -o选项。尝试这个:
find . -type f -exec bash -c 'iconv -f iso-8859-1 -t utf-8 "{}" > /path/to/destination/"{}"' \;

关于shell - 使用 iconv 将 latin-1 文件批量转换为 utf-8,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4544669/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com