• 企业400电话
  • 微网小程序
  • AI电话机器人
  • 电商代运营
  • 全 部 栏 目

    企业400电话 网络优化推广 AI电话机器人 呼叫中心 网站建设 商标✡知产 微网小程序 电商运营 彩铃•短信 增值拓展业务
    linux下cp目录时排除一个或者多个目录的实现方法
    说明:/home目录里面有data目录,data目录里面有a、b、c、d、e五个目录,现在要把data目录里面除过e目录之外的所有目录拷贝到/bak目录中

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

    cp -R `find /home/data -type d -path /home/data/e -prune -o -print | sed 1d ` /bak
    ########################################################
    脚本实现
    脚本存放路径/home/osyunwei.sh
    vi /home/osyunwei.sh #编辑脚本,添加下面的代码
    #!/bin/sh
    cp -R `find /home/data -type d -path /home/data/e -prune -o -print | sed 1d ` /bak
    chmod +x /home/osyunwei.sh #添加脚本执行权限
    cd /home #进入脚本存放目录
    ./osyunwei.sh #执行脚本
    ########################################################

    方法二:使用cp命令复制的时候,只能排除一个目录不被复制,如果想排除两个或者多个目录的话,就需要使用rsync命令来实现了,看下面的例子

    如果要排除/home/data目录下面的a、b、c、三个目录,同时拷贝其它所有目录,执行以下命令
    yum install rsync #安装rsync
    rsync -av --exclude data/a --exclude data/b --exclude data/c data /bak

    注意:--exclude后面的路径不能为绝对路径,必须为相对路径才可以,否则出错。

    原文出自http://www.osyunwei.com
    上一篇:Archlinux 配置pacman源安装openssh的方法
    下一篇:linux下创建计划任务运行php文件的方法
  • 相关文章
  • 

    © 2016-2020 巨人网络通讯 版权所有

    《增值电信业务经营许可证》 苏ICP备15040257号-8

    linux下cp目录时排除一个或者多个目录的实现方法 linux,下,目录,时,排除,一个,