假设我有一个文件/etc/conf1
它的内容类似于
option = banana
name = monkey
operation = eat
假设我想用“鸵鸟”替换“猴子”。我怎样才能做到这一点而不将文件读入内存,更改它,然后将其全部写回?基本上,我如何“就地”修改文件?
最佳答案
你不能。 “ostrich”比“monkey”多一个字母,因此您必须至少从那时起重写该文件。文件系统不支持向上或向下“移动”文件内容。
如果它只是一个小文件,则没有理由为此烦恼,您不妨重写整个文件。
如果它是一个非常大的文件,您将需要重新考虑文件内容的内部设计,例如使用基于 block 的方法。
关于python - 如何更改文件并仅将更改写入磁盘 - 基本上是 sed (python)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3178135/