我想從網站下載一系列頁面。Shell腳本下載所有網頁?
的URL
將格式爲:http://example.com/x
其中x
可以來自任何100
向number
200
。
是否有任何可能的腳本可用於下載所有頁面,範圍從example.com/100
到example.com/200
?
我想從網站下載一系列頁面。Shell腳本下載所有網頁?
的URL
將格式爲:http://example.com/x
其中x
可以來自任何100
向number
200
。
是否有任何可能的腳本可用於下載所有頁面,範圍從example.com/100
到example.com/200
?
for x in {100..200}; do
wget "http://example.com/$x"
done
如果您已經安裝curl
,您可能需要使用相對高效的方式如下:
curl -O 'http://example.com/[100-200]'
(是的,我知道,curl
是真的很酷!)。
更快的版本不冒險與突破更復雜的URL不正確引用:
for x in {100..200}; do
wget 'http://example.com/'"$x" &
done
wait
目前還不清楚,服務器會感激你發送100個同時請求。瀏覽器往往會將自己限制爲像4個併發連接到服務器的東西。 – Barmar
我更喜歡:'wget的「http://example.com/'$x&' – BeniBela
我喜歡演示的習慣引用變量,除非你想讓他們進行分詞和通配符。我知道這個腳本並不是一個問題,但這意味着他不太可能在引用變量的其他腳本中遇到問題。 – Barmar
感謝Barmar始終引用,並且即使不是絕對必要,也顯示出這種良好的做法。 @BeniBela:總是用引號! –