合并这些 wget 和 egrep 命令以递归下载站点地图



我正在尝试找到一种方法来使它们协同工作。而我可以使用适用于Windows的Wget成功运行它:

wget --html-extension -r http://www.sitename.com

这将下载我的服务器上从根域链接目录的每个文件。我宁愿只下载站点地图中的页面。为此,我找到了以下使用CygWin的技巧:

wget --quiet https://www.sitename.com/sitemap.xml --output-document - | egrep -o
"http://www.sitename.com[^<]+" | wget --spider -i - --wait 1

但是,这只是检查页面是否存在,而不是像之前的 wget 命令那样将它们下载为静态 HTML 文件。

有没有办法合并这些并将站点地图页面下载为本地 html 文件?

如果你查看wget的手册页,你会看到--spider条目如下:

--spider
       When invoked with this option, Wget will behave as a Web spider, which means that it will not download the pages, just check that they are there.

实际下载文件所需要做的就是从命令中删除--spider

wget --quiet https://www.sitename.com/sitemap.xml --output-document - | egrep -o 
"https?://www.sitename.com[^<]+" | wget -i - --wait 1

最新更新