列出文件并使用 awk 获取评论

list file and using awk to get comment

我想获取文件夹中所有文件的全部评论。

我试过的是

ls -R | awk '/<!--/,/-->/' >> result

但是在结果文件中什么也没有显示。

但是如果我对一个文件使用 awk '/<!--/,/-->/' >> result 它就可以了。

html评论标签是<!-- some text here -->

我该如何解决。

您遇到的问题是 ls -R 创建了您正在搜索模式的文件名列表。最有可能的是,none 个文件的名称将与您的注释定界符模式相匹配(如果它们匹配,您可能会遇到某些...并发症...此类文件名;或者您稍后会遇到)。

您想搜索文件的内容,而不是文件名。大致如下:

find . -type f -name "*.html" -print0 | xargs -0 awk '....'

但是 HTML 解析器可能比 awk 更好,用于解析 HTML。