1
從shell使用curl,放棄(或檢測)由於發生超時而未完全下載的文件的最佳方法是什麼?我正在試圖做的是:curl from shell:如果傳輸超時丟棄輸出文件
curl -m 2 --compress -o "dest/#1" "http://url/{$list}"
當超時發生時,日誌顯示它,這是下載保存到磁盤上的文件的一部分:
[4/13]: http://URL/123.jpg --> dest/123.jpg
99 97984 99 97189 0 0 45469 0 0:00:02 0:00:02 --:--:-- 62500
curl: (28) Operation timed out after 2000 milliseconds with 97189 bytes received
我試圖擺脫未被100%下載的文件,或者讓他們列出以後嘗試恢復(-C標誌)。
檢查退出代碼' $?'。如果不是零,則意味着錯誤。 – devnull
我一次下載多個文件(以便它重新使用連接),並且它可以超時只有其中一個。我需要將退出代碼與正確的文件關聯起來。 – jvilhena
難道你不能把'curl'放在'for'循環中,從而指示它一次獲取一個文件而不是傳遞一個URL列表?這將使您能夠檢查每個URL的返回碼。 – devnull