硅云帮助文档中心
搜索文档
热门搜索词:
产品简介
产品定价
入门指南
经典案例
快照
常见问题
知识拓展
名词解释
API参考
Linux(Debian/ubuntu/centos等)系统如何复制文件呢?
将 /abc 目录 完整复制到 /www 目录(即将/abc目录下的所有子孙级文件夹和文件全部复制到/www目录里)
# 方法1:当/www目录不存在时,可以执行以下命令
cp -a /abc /www
其中-a表示保留复制后的目录和文件的属性和原来的一致。
# 方法2:本方法的效果与方法1是一样的(注意/abc后的/),当/www目录不存在时,以下命令明确表示拷贝abc下的所有内容到/www
cp -a /abc/ /www
参数说明:
如果/www已存在,直接执行上述命令会在/www下创建子目录/www/abc(不符合需求),因此需要先清理原有/www,再拷贝:
步骤 1:删除已存在的/www(谨慎操作!确保/www内的内容可删除)
步骤2:继续执行1中的命令
rsync比cp更适合复杂场景(如跨服务器拷贝、增量更新),命令如下:
# 基本用法:将/abc的内容同步到/www(/www不存在则自动创建)
rsync -avz /abc/ /www/
# 若需要删除/www中原有、但/abc中没有的文件(完全覆盖),添加--delete参数
rsync -avz --delete /abc/ /www/
参数说明:
# 如果需要覆盖的文件很多,想要无需手动一个个输入y确认,添加-f参数
cp -avf --delete /abc/ /www/ 以上命令可能仍会询问是否覆盖同名文件,这通常是系统是否给 cp 设置了默认别名,输入命令alias cp如显示cp -i则说明猜想正确,此时我们可以换用 /bin/cp命令来绕过别名 /bin/cp -avf --delete /abc/ /www/
注意:建议执行以上命令前,先用其他无用的目录做一次效果验证,尤其是需要删除、覆盖文件前做一次简单的验证,以防命令输错导致文件被删除、覆盖。
相关文档
您对该文档有什么建议?
本文导航