私は多くの(1000以上)のURLを含むファイルを処理するためにxargs
+を使用しています。curl
ファイルはfiles.txt
ちょっとそうです。
...
https://some.image.jpg?{foo}.{bar}
...
私は走っている
xargs -n 1 curl -o "#1.#2" < files.txt
これはsome.image.jpg
ファイルに正しくダウンロードされますが、foo.bar
最初の40個のURLに対してのみ、時にはより多いか、時には少なくなります。これはエラーで終了します
curl: (6) Could not resolve host: h
壊れたURLの前のリストからすべてのURLを削除して再度実行すると、今回はURL(現在の最初のURL)が機能しますが、今は再び中断されません。 80(それぞれ40)、同じエラーが発生しました。
したがって、URLには問題はなく、手動ダウンロードにも問題はありません。
私はGOW(https://github.com/bmatzelle/gow/wiki)Windowsで。
答え1
問題はxargs
forループを使用してスムーズに動作するために発生するようです。
FOR /F %i IN (files.txt) DO curl -o "#1.#2" %i