有谁知道sed -i的实现?
答
strace
表明即使是小文件也读取原始文件,结果写入临时文件,然后重命名为原始文件的名称文件。 所以我会假设这是大文件的相同行为:将创建一个临时文件。
'sed -i'创建一个临时文件并在完成时将其移动到原始文件上。如果你想真正修改文件,可以试试'ed'而不是 –
你也可以[查看源代码](http://git.savannah.gnu.org/cgit/sed.git/tree/sed),或者使用像[strace](https://en.wikipedia.org/wiki/Strace)这样的工具来查看该工具正在做什么。 – larsks
我正在投票结束这个问题,因为这与编程无关。 – edmz