我可以使用rm
删除旧文件夹,然后使用cp
复制新文件夹。但怎样才能一次性做到呢?
答案1
使用rsync
:
rsync -av --delete source/ target
target
这将删除该目录中与该目录内容不匹配的所有内容source
,并另外复制该source
目录的内容。
/
末尾的尾随source/
很重要,因为如果没有它,您将获得一个目录target/source
而不是target
复制source
.
-a
(或--archive
) 选项可复制rsync
时间戳和其他元数据,-v
(或--verbose
) 选项可rsync
进行详细操作。如果没有--delete
,则不会删除 中的任何现有内容target
(除非它与事物同名,在source
这种情况下它将被更新)。
答案2
这是一件事。rm -fr olddir/* ; cp -a newdir/* olddir