如何在Windows上使用Ruby获取文件创建时间?
File.ctime
应该返回更改时间。
dir /tc
会返回创建时间以及其他一些东西。
有没有比执行和解析更好的方法?
答案 0 :(得分:11)
显然,文件的“ctime”(“创建”或“更改”时间)元数据属性为system dependent,因为某些系统(例如Windows)存储文件的创建时间(其“出生日期”) “)和其他(Posix系统,例如Linux)跟踪上次更新的时间。 Windows使用ctime属性as the actual creation time,因此您可以在Ruby中使用各种ctime
函数。
File类具有名为ctime
的静态和实例方法,它们返回上次修改时间,File::Stat具有实例方法(因为它们发生时不跟踪更改而不同)。< / p>
File.ctime("foo.txt") # => Sun Oct 24 10:16:47 -0700 2010 (Time)
f = File.new("foo.txt")
f.ctime # => Will change if the file is replaced (deleted then created).
fs = File::Stat.new("foo.txt")
fs.ctime # => Will never change, regardless of any action on the file.