Linux复制指定目录及子目录下特定类型的文件
Posted 北京王老师
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux复制指定目录及子目录下特定类型的文件相关的知识,希望对你有一定的参考价值。
方法一:通过完全复制然后删除指定类型的文件完成
Step1 使用cp命令复制所有文件
cp -r test/ test2
将测试目录test下所有内容完全复制到test2
Step2 组合使用find及xargs,将不用的文件删除
xargs是给命令传递参数的一个过滤器,可以将前一个命令产生的输出作为后一个命令的参数
find test2/ -name *.tes |xargs rm -rf
即将find产生的输出(test2目录下的所有tes文件),作为rm的参数,从而完全删除
适用场景举例:把项目文件备份,要去除其中的.svn文件,可以采用这种方式
方法二:带目录结构复制
这种情况下可以使用tar命令将指定类型的文件打包,然后解包,同样需要组合使用find和xargs
Step1 建立目录test3
mkdir test3
Step2 将指定类型文件带目录结构打包
find test/ -name *.txt |xargs tar czf test3.tgz
Step3 解包到目录test3
tar zxvf test3.tgz -C test3
以上是关于Linux复制指定目录及子目录下特定类型的文件的主要内容,如果未能解决你的问题,请参考以下文章
linux查找当前目录下所有子目录特定文件类型需要查找的文件内容
C#如何遍历指定目录以及指定目录下所有子文件夹,并获取除指定文件类型以外的所有文件的绝对路径?