Command-Line
僅從 Web 伺服器索引下載目錄/文件名列表
我正在嘗試 curl/wget 在網路伺服器的目錄列表中可用的目錄/文件名列表。
例如從(隨機選擇的)http://prodata.swmed.edu/download/,我正在嘗試下載:
bin dev etc member pub usr usr1 usr2
cUrl (
curl http://prodata.swmed.edu/download/
) 為我提供了整個 HTML 頁面,我需要手動解析所有文件/目錄條目。有沒有辦法只下載可用文件/目錄的名稱,使用 curl/wget,而不安裝額外的解析器?
HTTP 協議沒有從 HTTP 伺服器請求“文件列表”的功能。
curl
//wget
瀏覽器請求一個URL,其中包含一個任意請求字元串,伺服器發回一些任意數據。但是,您可以使用以下命令提取名稱
curl --silent http://prodata.swmed.edu/download/ | grep -o 'href=".*">' | sed 's/href="//;s/\/">//' bin dev etc member pub usr usr1 usr2
curl -s http://example.com/files/ | grep -o 'href=".*">' | sed -e "s/href=\"//g" | sed -e "s/\"\>//g"
給我一種像
ls
在目錄中一樣的體驗