我如何触摸“文件索引节点更改日期/时间”

我如何触摸“文件索引节点更改日期/时间”

我有一个 mp4 文件并运行 exiftool,我可以看到“文件索引节点更改日期/时间”标记在我触摸它时发生变化,但它更改为当前时间,而不是我使用 --date 参数指定的日期:

touch -am --date=@0 FILE 

我如何将“文件索引节点更改日期/时间”触摸到 --date 参数指定的日期?

答案1

您不能将 inode 更改时间 (ctime) 更改为任意值。当inode发生变化时,系统总是将inode变化时间更新为当前时间。这就是它的用途:ctime 应该是 inode 更改的时间。

touch FILE(或touch -m FILE)更改文件的修改时间。文件的修改时间应该是文件内容最后一次更改的时间。您可以任意设置。例如,当备份工具恢复文件时,它们会将提取的文件的修改时间重置为备份中记录的时间。在此示例中,恢复的文件的 inode 更改时间将是从备份恢复文件的时间。

请注意,ctime 是文件本身的属性,而不是文件内编码的内容。exiftool对于具有 EXIF 数据的文件显示它,但更常见的是使用ls -lc.该文件的副本将有自己的 ctime。

如果您是系统管理员,并且确实想要更改 ctime,则可以将系统时钟设置为比所需时间早一点,等到确切的时间,运行touch -r FILE FILE,然后将系统时钟设置回实际时间。这没有什么实际意义,但如果你愿意的话你可以这样做。

相关内容