Curl

如何使用 curl 和 xargs 下載儲存在文本文件中的多個文件?

  • August 23, 2010

如何使用 curl 和 xargs 下載儲存在文本文件中的多個文件?這是我的最後一次試驗:

cat listfile.txt | xargs curl -O

第一個文件執行良好,但其他文件只是輸出到標準輸出。

我找到了解決方案:

cat ./../c | xargs -n1 curl -O

xargs 用空格和換行符分割標準輸入,並立即傳遞給 curl。所以 curl 只用長參數呼叫了一次。

n1選項將此傳遞的參數計數限制為 1,因此 curl 將被多次呼叫。

使用 GNU Parallel http://www.gnu.org/software/parallel/你可以:

cat listfile.txt | parallel curl -O

GNU Parallel 不僅可以很好地處理像 ‘" 和空格這樣的特殊字元,而且您還將獲得併行下載的額外好處。

觀看 GNU Parallel 的介紹影片:http ://www.youtube.com/watch?v=OpaiGYxkSuQ

引用自:https://serverfault.com/questions/155832