解析文件以使用值

时间:2018-02-19 18:09:57

标签: build gruntjs readme

背景资料

我有一个JS库,它由许多构造函数组成。我正在使用grunt-concat& -uglify将这些文件编译成一个文件。

每个构造函数都有一个readme.md文件。

图书馆用于制作广告横幅。大约10位开发人员使用它,他们在使用该库的文件夹Templates中创建自己的广告模板。这些文件是.xml个文件,这些文件还提供CDATA标记,用于插入JavaScript代码。

问题

我想用计数器填充readme文件,以便开发人员可以直接在其文档中查看特定构造函数的流行程度。

  

出现次数(<%occurrence%>)

我已经完成了什么

我可以通过执行获得出现的次数 find . -name "*.xml" -exec grep -e "new\Foo\.Bar" {} \; | wc -l

如果我能抓住这个值并将其插入readme文件,那就太棒了。

1 个答案:

答案 0 :(得分:0)

grunt.registerTask('count_occurrences', '', function () {
        var exec = require('child_process').execSync;
        var result = exec("find . -name "*.xml" -exec grep -e "new\Foo\.Bar" {} \; | wc -l", { encoding: 'utf8' });

        grunt.log.writeln(result);
        // Now write result to your README file
        grunt.file.write("README.md", result);
});

您可以使用名为exechttps://github.com/jharding/grunt-exec)的grunt插件来执行cmd行功能,例如find

您可能希望GruntFile.js

中出现类似内容
exec: {
  count_occurrences: {
    cmd: function() {
      return 'find . -name "*.xml" -exec grep -e "new\Foo\.Bar" {} \; | wc -l';
    }
  }
}

然后拨打grunt exec:echo_name