我在 mega 上有一个帐户,我想将其与我电脑上的一个文件夹同步。问题是,这个帐户在某种程度上是公开的,所以我不能使用它,rsync
以防--delete
有人删除了所有文件。
我认为可以将rsync
所有文件复制到我的计算机而不删除任何内容,然后使用命令查找重复项(有人将文件移动到另一个目录等)find -type f -exec md5sum '{}' ';' | sort | uniq --all-repeated=separate -w 33 | cut -c 35-
并仅保留最新版本。
但如果我没记错的话,文件创建时间在复制后仍然存在。这很不幸,因为数据主要由不会改变的图像和 pdf 文件组成。
有什么方法可以传递(仅)复制的文件,touch
或者有更好的方法来解决此问题?
答案1
你说 :
但如果我没记错的话,文件创建的时间是在复制之后留下的。
不总是。
复制文件和目录时,您可以保留修改时间。
例如,cp -rp
保留创建时间、所有权......(来自man cp
):
-a, --archive 与 -dR --preserve=all 相同
-p 与 --preserve=mode,ownership,timestamps 相同
以同样的方式rsync -t
保留修改时间(这次来自man rsync
):
-t, --次 保留修改时间
通常与选项rsync
一起使用,因此具有隐式用途。-avr
-t
-A, --archive 存档模式;相当于 -rlptgoD(无 -H、-A、-X)