为了方便手动复制大量文件,我经常使用FreeFileSync。我注意到它会保留原始文件信息,例如文件创建时间、最后修改时间等。
现在我需要定期批量复制大量文件,并希望用R完成。所以我想知道R是否也能保留这些信息。据我所知,
有没有办法在文件被复制后恢复原始文件信息呢?
现在我需要定期批量复制大量文件,并希望用R完成。所以我想知道R是否也能保留这些信息。据我所知,
file.rename()
和file.copy()
会改变文件信息,例如将时间设置为实际复制文件的时间。有没有办法在文件被复制后恢复原始文件信息呢?
rsync -a
、cp -a
甚至是tar
(R中有tar
和untar
命令,因此它也可能适用于Windows)。 - Vincent Zoonekyndrsync
(例如,带有 Rtools)似乎不支持“扩展属性”-X
选项,该选项保留其他操作系统上的文件创建时间。我看到的最接近的方法是使用zip()
,然后使用unzip(...,setTimes=TRUE)
。但这并不是完美的替代品。由于某种原因,它似乎会改变一些时间 1 秒,并需要更多关注当前工作目录、目标目录等。 - Josh O'Brienfile.rename()
可以保留修改日期和创建日期(至少在我使用 Win7 64 位系统时是这样的)。出于这个原因,我使用file.rename()
而不是file.copy()
。但显然你不能用它来复制,只能重命名或移动文件。 - Chris Holbrook