2013-10-22 48 views
-1

是否有可能使用Linux的wget命令來獲取網站目錄樹中的所有文件?有沒有辦法在通配符上使用wget?

我可以遞歸地獲取所有的網站與鏡像等,但我想只是在一個目錄中獲取所有文件。在我看來,它看起來是這樣的:

wget http://www.somesite.com/here/is/some/folders/* 

這將下載的所有文件(不必在子目錄遞歸看看)在/文件夾/目錄。但通配符似乎不適用於wget,所以我正在尋找正確的方法。

+1

由於您無法獲取http上的文件列表,因此無法使用通配符。 –

回答

3

當然,有wget -r,這將緩解下folders/下的所有內容,只要有一個指數遞歸通過。

你可以做的另一件事是,如果有一個index.htm或任何在folders目錄,你可以grep,sed和通過鏈接wget來wget的,但像這樣削減自己的方式:

wget -qO - http://foo/folder/index.htm | sed 's/href=/#/' | cut -d\# -f2 | \ 
    while read url; do wget $url; done 

這是一般我做什麼,當我需要刮,我不能因爲任何原因遞減。

編輯:

可能要添加--no-parent並設置--domain正常。 wget manpage其實很不錯,涵蓋了這個東西。

+1

無法獲取您的sed |爲我的案例乾淨地工作,最終做了像'wget -O - http:// foo | sed -n's#^。* href =「\([^」] \ {1,\} \)「。* $#\ 1#p'| while read url; ...' – zamnuts

相關問題