在一组文件夹中查找所有 HTML 个文件,提取特定 HTML 个内容并将内容保存到新文件
Find all HTML files in a set of folders, extract specific HTML content and save content to new files
我有一个包含数千个 HTML 文件的文件夹结构,我想使用 pandoc 清理并转换为 markdown,但保留现有结构(或镜像结构)。
我目前已经设法使用 find
找到所有 HTML 文件,使用 cat
命令将该内容传递给 pup
,它解析内容并查看<article>
标签并将内容通过管道传输到名为 article-content.txt.
的新文件
我正在考虑分两个阶段处理内容。
- 从每个文件中提取文章标签并另存为新文件(或覆盖现有文件)。
- 然后用pandoc转换同样的结构
我对bash的了解有限。我知道我可能需要遍历文件列表并将路径/文件名作为变量传递到新的文件构造中。但不确定下一步要去哪里。
cat $(find . -type f -name "*.html") | pup 'article' > article-content.txt
如果您想对每个文件分别执行类似的操作,find
内置了 -exec
和 -execdir
选项(参见 man find
):
find . -type f -name "*.html" -execdir bash -c "pup 'article' < {} > {}.md" \;
我有一个包含数千个 HTML 文件的文件夹结构,我想使用 pandoc 清理并转换为 markdown,但保留现有结构(或镜像结构)。
我目前已经设法使用 find
找到所有 HTML 文件,使用 cat
命令将该内容传递给 pup
,它解析内容并查看<article>
标签并将内容通过管道传输到名为 article-content.txt.
我正在考虑分两个阶段处理内容。
- 从每个文件中提取文章标签并另存为新文件(或覆盖现有文件)。
- 然后用pandoc转换同样的结构
我对bash的了解有限。我知道我可能需要遍历文件列表并将路径/文件名作为变量传递到新的文件构造中。但不确定下一步要去哪里。
cat $(find . -type f -name "*.html") | pup 'article' > article-content.txt
如果您想对每个文件分别执行类似的操作,find
内置了 -exec
和 -execdir
选项(参见 man find
):
find . -type f -name "*.html" -execdir bash -c "pup 'article' < {} > {}.md" \;