博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
【转】Linux 用cp和rsync同步文件时跳过指定目录
阅读量:4595 次
发布时间:2019-06-09

本文共 863 字,大约阅读时间需要 2 分钟。

 

需求是:某测试站点,在某个节点的时候需要同步到正式站点去,但是里面的config目录不能覆盖,

方法一:终端命令行下执行以下命令

cp -R `find /projectA -type d  -path /projectA/common/config -prune -o -print | sed 1d ` /projectB/

方法二:

localhost # find projectB/ommon/config | xargs touch       修改目标目录的congfig目录文件的access time到当前,这样cp的时候加update参数可以避开该目录

localhost # cp -r -u -v projectA/* projectB/         这样不会复不复制projectA下面第一级的隐藏目录,但是二级三级的还是会复制过去

所以适用于没有隐藏目录的情况下,比较方便.

但是我们的项目因为牵涉SVN什么的,所以会有很多隐藏目录包含版本控制信息,就会很乱,所以有了第二种方案

方法三:

rsync -vauP --exclude=".*“ --exclude=”common/config“ projectA/ projectB
简单注释下
-a 参数,相当于-rlptgoD,-r 是递归 -l 是链接文件,意思是拷贝链接文件;-p 表示保持文件原有权限;-t 保持文件原有时间;-g 保持文件原有用户组;-o 保持文件原有属主;-D 相当于块设备文件;
-P 传输进度;
-v 冗余模式,查看到文件列表等
-u update模式,如果目标文件新于源文件,则跳过
第一个exclude表示跳过所有.开头的隐藏文件
第二个表示调过projectA/common/config目录,因为config目录下的文件,轻易不需改变,如果需要手动调整即可,注意这个参数是后面SRC参数的相对路径

转载于:https://www.cnblogs.com/helloyb/archive/2012/11/03/2752172.html

你可能感兴趣的文章
apache环境下配置多个ssl证书搭建多个站点
查看>>
PHPExcel随笔
查看>>
利用hadoop自带程序运行wordcount
查看>>
语音活性检测器py-webrtcvad安装使用
查看>>
gson小练习之嵌套复杂数据解析
查看>>
WIFI驱动的移植 realtek 8188
查看>>
Swift - 懒加载(lazy initialization)
查看>>
一张图理解prototype、proto和constructor的三角关系
查看>>
python lambda简单介绍
查看>>
StringBuilder的使用与总结
查看>>
CSS3基础(2)—— 文字与字体相关样式、盒子类型、背景与边框相关样式、变形处理、动画功能...
查看>>
Java的文档注释之生成帮助文档
查看>>
转:web_url函数学习
查看>>
TCP客户端 服务端详细代码
查看>>
win10用filezilla server搭建ftp服务器一直无法访问
查看>>
字符串算法(KMP,Trie树,AC自动机)
查看>>
Oracle PL/SQL编程之过程
查看>>
Spring(三)--Spring bean的生命周期
查看>>
TextClock的基本使用
查看>>
.NET技术
查看>>