我有一个文件夹示例,其中包含多个文件夹和文件,如下所示。
sample/folderA/file1.csv
sample/folderA/file2.csv
sample/folderB/file1.csv
sample/folderB/file2.csv
sample/folderB/file3.csv
我正在寻找ANT命令,该命令可以将所有文件夹形式FolderA重命名(或复制)到folderA-bak,如下所示。
sample/folderA-bak/file1.csv
sample/folderA-bak/file2.csv
sample/folderB-bak/file1.csv
sample/folderB-bak/file2.csv
sample/folderB-bak/file3.csv
注意:这里会有很多文件夹,但我不知道那里的名字,有什么名字我都需要在末尾附加-bak。
答案 0 :(得分:0)
使用蚂蚁copy task和嵌套的fileset和regexmapper,如下所示:
<copy todir="what/ever/sample">
<fileset dir="what/ever/sample"/>
<regexpmapper from="(.+)(folder.)(.+)" to="\1\2-bak\3"/>
</copy>
要使其工作而不论目录名如何,请使用此正则表达式:
<regexpmapper from="(.+)(.+)(\\.+)" to="\1\2-bak\3"/>