(在C / C ++ / Linux中)
有没有办法连接文件A和文件B(或者实际上将一个A的内容附加到B的内容)只能通过改变文件系统而不需要数据复制的开销?然后可以丢弃文件A。
由于
答案 0 :(得分:7)
如果文件是块结构的,并且操作系统支持块结构文件(如某些那样),那么(原则上)是。但是,当您询问Linux时,我假设您正在讨论面向字节流的文件系统,其中可能无法完全使用磁盘块。在这种情况下,一些复制是不可避免的,实际上你必须复制整个文件。
答案 1 :(得分:2)
您可以编写自己的文件系统(例如,使用FUSE),提供便宜连接的伪文件。但我想这对于任何用例来说都是过度的,因为你必须关心引用和东西。