有没有办法通过终端/命令行查看文档/文件的时间戳历史列表?

有没有办法通过终端/命令行查看文档/文件的时间戳历史列表?

这看起来很简单,但由于某种原因,事实并非如此: 问题:在过去的 3 个月里,我一直在写一篇论文——甚至不是脚本……只是一篇经济学论文。我试图确定我花了多少时间编写它,我保存了文件多少次以及每次更改文档增长了多少。是否有命令/脚本来查看此信息?我不是在寻找确切的更改,我只是在寻找一般文件信息。我唯一能找到的是文件最近一次被修改的时间,但是我找不到最近一次之前的修改信息。

预期输出示例:

$ (elusive and mysterious command that is similar to stat -x) <file>

 File: "file"
  Current Size: 1000        FileType: Regular File
  Mode: (0600/-rw-------)         Uid: (  501/user)  Gid: (   20/   group)
Device: 14,2   Inode: number    Links: 1
Access: Wed Mar 14 19:50:00 2012
Modified: Fri Dec 23 01:22:40 2011
--Size: 1000
Modified: Wed Dec 21 11:42:21 2011
--Size: 920
Modified: Wed Dec 21 11:01:12 2011
--Size: 703
Modified: Wed Dec 21 10:11:01 2011
--Size: 100
Modified: Tue Dec 20 11:42:38 2011
--Size: 0
Change: Mon Feb 13 20:44:36 2012

答案1

通常,这些信息不会被保留——如果保留,则很大程度上取决于您所使用的系统。

我们可以从您想要的输出推断您正在使用类 Unix 系统。 Unix为每个文件保留三个时间戳:mtime、ctime和atime,分别是最后修改时间、最近修改inode的时间和最后访问时间。这些都没有保留更深入的历史。

您用来修改文件的程序可能保留此类信息,但这取决于您使用的内容。

如果您想跟踪这些事情,您可能需要使用源代码控制系统。其中有一些可用:RCS,CVS,颠覆(SVN),git,汞 (Hg),以及许多其他人。修改文件后,您必须明确签入文件,以便跟踪修改。这样的系统还可以让您检索和比较旧版本。

相关内容