我正在寻找一种方法来更改许多文件中的某些数据(更改 xml 编码)。有很多文件(超过 1 000 000 个)。最快的方法是什么? Sed、grep 还是其他东西?谢谢!
改变:
<?xml version="1.0" encoding="ASCII"?>
为此:
<?xml version="1.0" encoding="UTF-8"?>
最佳答案
您可以为此使用 sed。如果那是唯一出现“ASCII”的地方,那就很容易做到了
sed -i -e 's/ASCII/UTF-8/' <file>
注意:不带参数的 -i
标志是 GNU 语法。此外,如果 ASCII 出现在您不想替换的任何位置,则必须使您的模式更加具体。
这将为每个文件创建一个新的 sed
进程。因此,在性能方面,您可能会更好地尝试编写一个脚本来打开文件并进行更改而无需启动新进程。在 Python 中,您可以编写一个函数来执行此操作,并使用 os.walk
导航目录结构以找到您想要的文件。
关于xml - 更改文件中的数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30306354/