Linux - 文件更改时间与修改时间

bla*_*o_x 7 ubuntu stat

我使用的是 Ubuntu 12.04,但我认为这个问题涵盖所有 Linux 变体。在该stat命令的联机帮助页中,有两(四)个格式选项似乎表示相同的意思:

文件的有效格式序列(不带 --file-system):

...

%y 上次修改时间,人类可读

%Y 上次修改时间,自 Epoch 以来的秒数

%z 上次更改时间,人类可读

%Z 上次更改的时间,自 Epoch 以来的秒数

但是,这些值并不总是相等的。例如,stat --printf="%y\n%z\n" /usr/local在我的系统上输出以下内容:

2012-04-26 10:29:13.000000000 -0500

2013-05-06 18:08:19.000000000 -0500

那么“更改时间”和“修改时间”有什么区别呢?

小智 14

上次修改时间 - 上次修改文件的时间(内容已被修改)

上次更改时间 - 文件的 /metadata/ 上次更改时间(例如权限)

  • 还必须注意的是, mtime 可以设置为您想要的任何内容, ctime 不能。 (2认同)