如何确定文件的创建时间

时间:2014-09-19 20:59:28

标签: shell

我有一个在服务器上编译的.jar文件,后来被复制到本地计算机。在本地计算机上执行ls -l只会让我将时间复制到本地计算机上,这可能比在服务器上创建它的时间要晚得多。有没有办法在命令行上找到那个时间?

2 个答案:

答案 0 :(得分:1)

类UNIX系统不记录文件创建时间。

每个目录条目都有3个时间戳,所有这些时间戳都可以通过运行stat命令或向ls -l提供选项来显示:

  • 上次修改时间(ls -l
  • 上次访问时间(ls -lu
  • 上次状态(inode)更改时间(ls -lc

例如,如果您创建一个文件,请等待几分钟,然后更新它,读取它,并执行chmod更改其权限,那时您的文件系统中没有记录创造了它。

如果您要小心如何将文件复制到本地计算机(例如,使用scp -p而不仅仅是scp),您可能可以避免更新修改时间。我认为.jar文件在首次创建后可能无法修改,因此修改时间可能已经足够了。

或者,正如Etan Reisner在评论中建议的那样,.jar文件本身(基本上是一个zip文件)中可能会有有用的信息。我不太了解.jar个文件,可以对此进行进一步评论。

答案 1 :(得分:0)

wgetcurl具有允许您保留文件修改时间戳的选项。这与我正在寻找的相近。