在配置Grunt的Task时通配符支持和动态生成文件名详解

来源:互联网 发布:网络打印四六级成绩单 编辑:程序博客网 时间:2024/05/06 20:53

  copy: {      // 这是Task里的其中一个Target      dests: {        expand: true,        cwd: '<%=config.app%>/newFolder',        src: ['**/{a*,b*}.html'],        dest: '<%=config.dist%>/newFolder',        ext: ".shtml",        extDot: "first",        flatten:true, //去掉中间上当,下面的rename可以再找回来        rename: function( dest, fileName ) {          return dest + "/" +fileName;        }      }    }


通配符支持:由nodejs内置的node-glob库支持,这些都可以用在上面所说的各种文件配置中

1*匹配任何字符,除了/
2?匹配单个字符,除了/
3**匹配任何字符,包括/,所以用在目录路径里面
4{}逗号分割的操作(逗号后面不要有空格)
5! 排除某个匹配
动态生成文件名:
expand 设置为true打开以下选项,如果设为true,就表示下面文件名的占位符(即*号)都要扩展成具体的文件名。
cwd 所有src指定的文件相对于这个属性指定的路径,需要处理的文件(input)所在的目录
src 要匹配的路径,相对与cwd,表示需要处理的文件。如果采用数组形式,数组的每一项就是一个文件名,可以使用通配符
dest 生成的目标路径前缀,表示处理后的文件名或所在目
ext 表示处理后的文件后缀名。替换所有生成的目标文件后缀为这个属性
extDot:first:表示以文件名后的第一个点后面开始作为后缀名;last:表示以文件名后的最后一个点后面开始作为后缀名
flatten:删除所有生成的dest的路径部分,值为boolean类型(truefalse)用来指定是否保持文件目录结构,true是保持文件目录
rename 一个函数,接受匹配到的文件名,和匹配的目标位置,返回一个新的目标路径
1 0