准备一个大文件是困难的,因为它需要推送所有
其他字符向前。但是,是否可以通过操纵来完成
inode 如下?:
块,并将前一个块撞到第二个块
位置,从前第二个块到第三个位置,依此类推。
我意识到这仍然需要向前撞块,但应该是
比必须使用临时文件更有效。
我还意识到新的第一个块将是一个“短”块(并非块中的所有数据都是文件的一部分),因为您的前置数据不太可能与块的大小完全相同。
或者,如果 inode 块被简单地链接起来,它只需要很少的
完成上述工作。
注意:我上次直接操作磁盘数据的经验是使用
Commodore 1541,所以我的知识可能有点过时了......
最佳答案
现代操作系统不应该允许用户这样做,因为 inode 数据结构特定于底层文件系统。
如果您的文件系统/操作系统支持它,您可以通过在开头添加空数据,然后写入稀疏块来使文件成为稀疏文件。理论上,这应该给你你想要的。
YMMV,我只是在胡思乱想。 ;)
关于file - 通过操作 inode 在没有临时文件的情况下添加文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17515715/