Robocopy – 如何丢弃时间戳

我试图将一些文件复制到一个文件夹中,这些文件的旧版本已经使用了robocopy工具。 而为了区分版本,我想在复制文件时在输出文件夹中设置时间戳“now”

基本上就像复制和“触摸”文件一样。

然而,看起来很简单,似乎没有这个select。 我明白,当在/ COPY上使用D (数据)标志时, T (时间戳)标志被自动添加,所以源时间戳被保留。

有什么我错过了选项? 还是有其他的select吗?

谢谢你的帮助。

朱利安。

我不认为Robocopy会为此工作。 Robocopy工作原理的核心部分是通过比较源文件夹和目标文件夹中的时间戳和文件大小来确定需要复制哪些文件。 因此,不能使用Robocopy将目标中的时间戳更新为比源上的时间戳更新。

现在,我已经看到在将文件的UNIX权限推送到NTFS(反之亦然)时的这种行为,但与Robocopy无法转换ACL相比,并不是预期的行为。

我并不清楚你想做什么,但可能有不less的解决方法来获得适合你的东西。 例子:

  • 让robocopy脚本将文件复制到基于date命名的目录中。
  • 每当脚本成功运行时,将时间/date捕获到日志文件中。

robocopy完成后,您必须更新文件。

你必须使用像这样的东西:

If you want to assign the current time and date to a file without modifying the file, use the following syntax: copy /b filename.txt +,, The commas indicate the omission of the Destination parameter. 

您必须在目标文件夹中运行此命令,这意味着您必须在命令行中的此文件夹中才能正常工作。

你可以编写一个batch file,在这个目标文件夹中的某些文件上运行这个命令。

但是我还是没有得到你最新的评论“我只需要复制新文件。” – 这就是robocopy所做的,并且会在复制时获取新的/更新的源文件的新时间戳。 因此,源中的所有新JAR文件都应该在源和目标中都有新的时间戳。