2014-04-19 82 views
0

我想从网站下载一系列页面。Shell脚本下载所有网页?

URL将格式为:http://example.com/x其中x可以来自任何100number200

是否有任何可能的脚本可用于下载所有页面,范围从example.com/100example.com/200

回答

3
for x in {100..200}; do 
    wget "http://example.com/$x" 
done 
+0

我更喜欢:'wget的“http://example.com/'$x&' – BeniBela

+2

我喜欢演示的习惯引用变量,除非你想让他们进行分词和通配符。我知道这个脚本并不是一个问题,但这意味着他不太可能在引用变量的其他脚本中遇到问题。 – Barmar

+0

感谢Barmar始终引用,并且即使不是绝对必要,也显示出这种良好的做法。 @BeniBela:总是用引号! –

0

如果您已经安装curl,您可能需要使用相对高效的方式如下:

curl -O 'http://example.com/[100-200]' 

(是的,我知道,curl是真的很酷!)。

0

更快的版本不冒险与突破更复杂的URL不正确引用:

for x in {100..200}; do 
    wget 'http://example.com/'"$x" & 
done 
wait 
+0

目前还不清楚,服务器会感激你发送100个同时请求。浏览器往往会将自己限制为像4个并发连接到服务器的东西。 – Barmar