从多个 html 文件生成 html 目录

从多个 html 文件生成 html 目录

这不是一个专门针对 Linux 的问题。但我想知道是否可以在 BASH 中完成此操作。我的文件夹中有多个 HTML 文件,我想生成 HTML 目录。因此对于file1.html 和 file2.html,我想生成一个这样的文件:

<html>
   <body>
    <h1>Table of Contents</h1>
    <p style="text-indent:0pt">
       <a href="file1.html">file1</a><br/>
        <a href="file2.html">file2</a><br/>
     </p>
   </body>
 </html>

该过程很简单,但当您有十多个名称很长的文件时,可能会变得乏味且令人困惑。我使用 Calibre 使用目录文件将 HTML 文件转换为电子书格式。如果能自动完成的话,会省去很多麻烦。

感谢您的时间。任何帮助,将不胜感激。

答案1

创建一个包含以下内容的文件:

#!/bin/sh
echo "<html>"
echo "   <body>"
echo "    <h1>Table of Contents</h1>"
echo "    <p style=\"text-indent:0pt\">"
for fil
do
    echo "       <a href=\"$fil\">${fil%.html}</a><br/>"
done
echo "    </p>"
echo "  </body>"
echo "</html>"

给它一个名称,例如toc。键入chmod +x toc,然后./toc *.html在文件所在目录中运行。它将把 HTML 目录写入标准输出,当然,您可以将其重定向到文件。

相关内容