首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Gradle脚本:将子文件夹和其他文件夹的内容复制到新位置

Gradle脚本:将子文件夹和其他文件夹的内容复制到新位置
EN

Stack Overflow用户
提问于 2016-06-21 18:08:48
回答 1查看 101关注 0票数 0

我有以下文件夹结构(有任意数量的子文件夹,名称未知)。我只有父文件夹的路径可用。

代码语言:javascript
运行
复制
Parent
  | Child_folder_0
  | Child_folder_N

以及一个名为contentFolder的单独文件夹

我正在尝试将每个子文件夹(及其内容)复制到不同的位置,并将contentFolder的内容复制到每个子文件夹的新位置。

谢谢!

EN

回答 1

Stack Overflow用户

发布于 2016-06-21 19:02:21

以下代码:

代码语言:javascript
运行
复制
def parentFolder  = 'Parent'
def contentFolder = 'contentFolder'
def destDir       = 'destDir'

task copyChildFilesFromParent(type: Copy) {
    from(parentFolder) {
        include '**/*'
    }
    into destDir
}

task copyContentFilesIntoChildren() {
    (parentFolder as File).eachDir { childDir ->
        copy {
            from(contentFolder) {
                include '**/*'
            }
            into "$destDir/${childDir.name}"
        }
    }
}

task copyFiles(dependsOn: ['copyChildFilesFromParent', 'copyContentFilesIntoChildren'])

将转换以下目录结构:

代码语言:javascript
运行
复制
├── build.gradle
├── contentFolder
│   ├── content.txt
│   └── data.dat
└── Parent
    ├── Child_folder_0
    │   ├── 0.dat
    │   └── data.0
    ├── Child_folder_1
    │   ├── 1.dat
    │   └── data.1
    ├── Child_folder_2
    │   ├── 2.dat
    │   └── data.2
    └── Child_folder_N
        ├── data.N
        └── N.dat

转到

代码语言:javascript
运行
复制
├── destDir
│   ├── Child_folder_0
│   │   ├── 0.dat
│   │   ├── content.txt
│   │   ├── data.0
│   │   └── data.dat
│   ├── Child_folder_1
│   │   ├── 1.dat
│   │   ├── content.txt
│   │   ├── data.1
│   │   └── data.dat
│   ├── Child_folder_2
│   │   ├── 2.dat
│   │   ├── content.txt
│   │   ├── data.2
│   │   └── data.dat
│   └── Child_folder_N
│       ├── content.txt
│       ├── data.dat
│       ├── data.N
│       └── N.dat
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37941513

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档