zoukankan      html  css  js  c++  java
  • cp备份操作时如何忽略指定的目录

    需求场景:进行CP拷贝备份的时候,子目录里面的某些大文件或是一些log文件是无需备份的,那么在CP操作时需要忽略掉指定的目录。

    案例演示如下:备份data目录,但是不包括里面的share子目录。

    先看一下data目录都包括什么文件:

    $ tree data
    data
    ├── control
    ├── debian-binary
    ├── md5sums
    ├── postinst
    ├── prerm
    └── usr
        ├── bin
        │   ├── mime-tool
        │   └── topal
        └── share
            ├── doc
            │   └── topal
            │       ├── changelog.Debian.gz
            │       ├── changelog.gz
            │       ├── changelog.html.gz
            │       ├── copyright
            │       ├── Features.html
            │       ├── README.Debian
            │       └── topal.pdf.gz
            ├── man
            │   └── man1
            │       ├── mime-tool.1.gz
            │       └── topal.1.gz
            └── topal
                └── patches
                    ├── alpine-1.00.patch
                    ├── alpine-1.10.patch
                    ├── alpine-2.00.patch-1
                    ├── alpine-2.00.patch-2
                    ├── alpine-2.02.patch-1
                    ├── alpine-2.02.patch-2
                    ├── pine-4.44.patch
                    ├── pine-4.50.patch
                    ├── pine-4.53.patch
                    ├── pine-4.58.patch
                    ├── pine-4.60.patch
                    └── pine-4.64.patch
    
    9 directories, 28 files
    

     操作指令:

    $ cd data/
    $ find . -iname share -prune -o -print0 | cpio -pmd0 /tmp/data3/
    

    然后查看拷贝的目录机构:

    $ tree /tmp/data3
    /tmp/data3
    ├── control
    ├── debian-binary
    ├── md5sums
    ├── postinst
    ├── prerm
    └── usr
        └── bin
            ├── mime-tool
            └── topal
    
    2 directories, 7 files
    

     发现share子目录被完美的忽略掉了。

    注意:一定要cd到data/目录下操作,否则拷贝后在目标目录会带上data/这一层。

    另外,根据实际需求,还有更高级的组合用法,如:

    $ find . -iname share -prune -o  ! -name '*log*'  ! -size +100M -print0   | cpio -pmd0 /tmp/data2
    

     该指令不仅会忽略share子目录,还会忽略名称中包涵“log”字符串的文件或文件夹,以及忽略大于100M的文件。

  • 相关阅读:
    c 中 static 关键字的作用
    关于声明变量关键字 extern 的搜索知识点
    思考在路上-虚拟机redhat系统安装tools
    一个小程序猿思考之路-头文件中#ifndef/#define/#endif作用和用法
    const 修饰的小看点(自己积点小知识)
    用css3实现闪烁效果
    icon font
    跟踪对象属性值的修改, 设置断点(Break on property change)
    setTimeout(fn, 0)引发的JavaScipt线程的思考
    "float: left;" div 不换行显示
  • 原文地址:https://www.cnblogs.com/wzc0066/p/6611238.html
Copyright © 2011-2022 走看看