Answers:
读取操作将成功完成,无论完成读取操作所花费的时间如何。
为什么以及如何运作?
当读取操作开始时,文件的Inode用作从中读取文件内容的句柄。
当将另一个文件移动到目标文件时,结果将是一个新的inode,这意味着磁盘上文件的物理内容将放置在其他位置,并且不会触碰正在读取的文件的原始内容。
它们唯一的共同点是它们的路径/文件名,而磁盘上的基础信息节点和物理位置会改变。
读取操作完成后(如果没有其他进程在旧文件上仍然具有打开的文件句柄,并且没有其他硬链接引用其inode),则旧数据将被丢弃。
移动操作完成后,文件将具有新的索引节点索引号。
您可以使用显示文件索引节点索引号ls -i /tmp/some-file
。
出于与上述相同的原因,可以删除应用程序仍在使用的文件,因为使用该文件的应用程序将仅从inode读取(指向磁盘上的实际文件内容),同时引用这些文件在文件系统中被删除。