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后面的路径不能为绝对路径,必须为相对路径才可以,否则出错。

(0)

相关推荐

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

    说明:/home目录里面有data目录,data目录里面有a、b、c、d、e五个目录,现在要把data目录里面除过e目录之外的所有目录拷贝到/bak目录中 方法一:终端命令行下执行以下命令 cp -R ...

  • Linux下用bash命令执行名称中带有"("符号的目录注意事项

    ***********************************************声明************************************************ 原创 ...

  • Linux下网卡混淆时如何辨别

    操作方法 01 linux有个自带的工具,检查网口的情况:ethtool 帮住可以通过man ethtool 来查看具体帮助 查看是否安装了这个工具: [root@linux /]# rpm -qf ...

  • linux下安装eclipse时如何配置.

    方法一: 只要设置的java的环境变量剩下的就和windows一样了 设置环境变量如下: vi ~/.bash_profile 按i进入编辑模式 添加如下 export JAVA_HOME=jdk+p ...

  • Linux下如何使用cp命令复制文件及复制目录

    Linux下cp命令的用法主要用于复制文件,加上参数还可以复制目录,下面随小编一起来了解下Linux下cp命令的具体用法。 一般情况下,shell会设置一个别名,在命令行下复制文件时,如果目标文件已经 ...

  • Linux下php安装imagick扩展教程

    php_imagick是一个可以供PHP调用ImageMagick功能的PHP扩展。使用这个扩展可以使PHP具备和ImageMagick相同的功能,现在我们来看看在Linux下php如何安装imagi ...

  • linux下scp远程拷贝包含空格的目录或者文件的解决方法

    今天遇到个白痴问题,用了linux 这么久了,竟然还出现如此低级的错误。 记录下,免得又忘记。 描述: 今天需要远程拷贝一些文件到电脑上,ubuntu的。 远程电脑是debian的。 文件和目录包含大 ...

  • linux中cp 命令使用介绍(复制文件或者目录)

    。一般情况下,shell会设置一个别名,在命令行下复制文件时,如果目标文件已经存在,就会询问是否覆盖,不管你是否使用-i参数。但是如果是在shell脚本中执行cp时,没有-i参数时不会询问是否覆盖。这 ...

  • Linux下如何使cp命令不提示覆盖文件

    在Linux下,如果希望将文件file拷贝到目录dir下,可以执行:cp file dir 但如果dir下已经存在一个名为file的文件的时候,系统总是会提示是否覆盖file. 这是一个很好的功能,它 ...