由于blog各种垃圾评论太多,而且本人审核评论周期较长,所以懒得管理评论了,就把评论功能关闭,有问题可以直接qq骚扰我

带目录结构复制单一文件类型

Linux 西门飞冰 5477℃

需求

取出/data/www/目录下的所有php文件,并且保持目录结构。

解决方法:

这种情况下可以使用find命令获取出指定目录php结尾的文件,然后使用tar命令将php文件以及,目录结构打包。

find /data/www/ -name '*.php' | xargs tar zcf php.tgz

使用示例

创建一个测试目录/data/www/包含php及jsp,html结尾的web文件

[root@node1 ~]# cat create.sh 
#!/bin/bash
for i in {1..3};do
  mkdir /data/www/test$i/ -p
  touch /data/www/test$i/$i.php
  touch /data/www/test$i/$i.jsp
  touch /data/www/test$i/$i.html
done

[root@node1 ~]# sh create.sh 
[root@node1 ~]# tree /data/www/
/data/www/
├── test1
│   ├── 1.html
│   ├── 1.jsp
│   └── 1.php
├── test2
│   ├── 2.html
│   ├── 2.jsp
│   └── 2.php
└── test3
    ├── 3.html
    ├── 3.jsp
    └── 3.php

使用find命令过滤/data/www/下的php文件,并且使用tar命令将目录结构和php文件打包。

[root@node1 ~]# find /data/www/ -name '*.php' | xargs tar zcf php.tgz

将打包后的php文件解压到/tmp目录下就可以看到/data/www/目录下的php文件即目录结构已经完整取出来了。

[root@node1 ~]# tar xf php.tgz -C /tmp/
[root@node1 ~]# tree /tmp/data/www/
/tmp/data/www/
├── test1
│   └── 1.php
├── test2
│   └── 2.php
└── test3
    └── 3.php

转载请注明:西门飞冰的博客 » 带目录结构复制单一文件类型

喜欢 (1)or分享 (0)