更新文件的修改时间(触摸)

时间:2015-06-03 01:16:53

标签: r

如何在R中touch一个文件(即更新其修改时间而不更改其内容)?我正在寻找一个跨平台的内置(或打包)等价物:

system2("touch", file_name)

2 个答案:

答案 0 :(得分:5)

我在R.utils包中找到了an implementation,它使用了@thelatemail建议的相同模式,但也提供了矢量化和R< 2.14,并且无形地返回旧的时间戳:

R.utils::touchFile(file_name)

像往常一样,library(sos); ???touch对于发现这一点非常宝贵。

答案 1 :(得分:4)

?Sys.setFileTime
在这种情况下,Sys.setFileTime(path_to_file_or_directory, Sys.time())可能会完成工作:

  

在Unix上,它使用系统调用'utimes',如果是的话   可用,否则'utimes'。在POSIX文件系统上,它设置两者   最后访问和修改时间。

     

在Windows上,它使用系统调用'SetFileTime'来设置'last   写时间'。某些Windows文件系统仅记录a的时间   分辨率为2秒。

虽然我不确定如何协调" 如果可用,它会使用系统调用'utimes',否则'utimes'"任何有意义的陈述。