Wget - 从 http 位置下载所有链接(非递归)

Cri*_*ris 1 wget

我有一个指向 http 页面的链接,该页面具有如下结构:

父目录 -
[DIR] _OLD/ 01-Feb-2012 06:05 -
[DIR] _Jan/ 01-Feb-2012 06:05 -
[DIR] _Dec/ 01-Jan-2012 06:05 -
..... . [DIR] _Apr/ 01-May-2011 06:05 -
[DIR] _Mar/ 01-Apr-2011 06:05 -
[DIR] _Feb/ 01-Mar-2011 06:05 -
[DIR] WEB-INF/ 2009 年 8 月 21 日 13:44 -
[ ] nohup_XXX_XXX21.out 2012 年 2 月 14 日 09:05 1.6M
[ ] XXX_XXX21.log 2012 年 2 月 14 日 09:04 64K
[] XXX_LOG-XXX2121212120 31 8.0K
[ ] XXX_XXX21_access.log00013 2012 年 2 月 14 日 00:01 585K

我只想下载根目录中存在的文件...... xxxx 文件。

我有一个解决方案

curl -U Mozilla http://yourpage.com/bla.html > page
grep -o http://[^[:space:]]*.*log* page > links
wget -i link
Run Code Online (Sandbox Code Playgroud)

但我想知道仅使用 wget 是不可能做到的吗?

kup*_*son 11

匹配模式 *.log* 的根目录中的所有文件:

wget --user-agent=Mozilla --no-directories --accept='*.log*' -r -l 1 http://yourpage.com/bla.html
Run Code Online (Sandbox Code Playgroud)
  • --user-agent=Mozilla 设置用户代理头
  • --no-directories 保存当前目录下的所有文件
  • --accept='*.log' 接受的扩展(模式)
  • -r 递归
  • -l 1 一级递归

您可以避免以向服务器发出更多请求为代价获取 html 链接(可能容易出错)。