Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/maven/6.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
File 如何使rsync保留未更改文件的时间戳_File_Timestamp_Rsync - Fatal编程技术网

File 如何使rsync保留未更改文件的时间戳

File 如何使rsync保留未更改文件的时间戳,file,timestamp,rsync,File,Timestamp,Rsync,我使用静态网站生成器,在每次运行时生成网站中的所有文件。生成文件后,我使用rsync将内容复制到位 为了实现更好的缓存,我希望rsync不要修改目标中那些未更改的文件的时间戳。可能吗 编辑:为了清楚起见,所有源文件的时间戳总是比目标文件的时间戳新。您尝试过-t和-E标志吗 编辑:嗯。。。还是每次重新生成网站时源文件的时间戳都会更改,即使文件没有更改?该-c选项似乎满足了我的要求。性能损失在我的情况下不是问题。是的,源文件时间戳总是更改为“现在”。在这种情况下,请尝试使用--size only,以

我使用静态网站生成器,在每次运行时生成网站中的所有文件。生成文件后,我使用rsync将内容复制到位

为了实现更好的缓存,我希望rsync不要修改目标中那些未更改的文件的时间戳。可能吗


编辑:为了清楚起见,所有源文件的时间戳总是比目标文件的时间戳新。

您尝试过-t和-E标志吗


编辑:嗯。。。还是每次重新生成网站时源文件的时间戳都会更改,即使文件没有更改?

-c
选项似乎满足了我的要求。性能损失在我的情况下不是问题。

是的,源文件时间戳总是更改为“现在”。在这种情况下,请尝试使用--size only,以便跳过新文件(假设它们的大小相同)。。。不过这有点危险,可能会产生意想不到的后果。将它与-c结合使用会更好一些,但速度较慢。在您的情况下,-t会更好。我不这么认为,因为源文件的时间戳总是比目标文件的时间戳更新,即使文件内容没有更改。使用-c选项可以工作。但需要注意的是:如果不希望修改时间发生变化,请确保不要使用-a选项,因为它会自动调用-t,这意味着“保留修改时间”,即“用本地文件的修改时间覆盖远程文件的修改时间”