如何使用Ruby创建或更新目录的mtime

时间:2015-03-24 03:44:39

标签: ruby

我想创建一个目录,如果目录已经存在,请更新它的mtime

这就是我写的:

Dir.exist?(dir) ? FileUtils.touch(dir) : FileUtils.mkdir_p(dir)

有没有更好的方法来启用它?

1 个答案:

答案 0 :(得分:1)

ctime无法更新,因为它是创建时间(*)。有关POSIX的说法,请参阅here。如果你真的,真的想要设置ctime,将原始目录移开,重新创建一个(此步骤设置ctime),移动所有原始目录内容到新的,删除旧的。

但是,您的代码应该更正,以便更新mtime修改时间)。


(*)或者更确切地说,根据您的操作系统和文件系统,如果你破解它,它可以,但你真的,真的不应该。