9

このコマンドを使用して、一連の画像をダウンロードします。

curl -O --max-time 10 --retry 3 --retry-delay 1 http://site.com/image[0-100].jpg

一部の画像が破損しているので削除します。

for i in *.jpg; do jpeginfo -c $i || rm $i; done

curlダウンロードする前にファイルの存在を確認する 方法は?

このコマンドを使用して、curl 既存の画像の上書きを防ぐことができます。

chmod 000 *.jpg

しかし、私はそれらを再ダウンロードしたくありません。

4

2 に答える 2

13

ターゲットリソースが静的である場合、新しいターゲットコピーのみをダウンロードcurlするオプションがあります。-z

使用例:

curl -z image0.jpg http://site.com/image0.jpg

あなたのケースの例:

for i in $(seq 0 100); do curl -z image$i.jpg -O --max-time 10 --retry 3 --retry-delay 1 http://site.com/image$i.jpg; done

于 2012-05-13T14:17:40.410 に答える
7

curlでそれを行うことについてはわかりませんが、curlコマンドを実行する前にBashで確認できます。

for FILE in FILE1 FILE2 …
do
  if [[ ! -e $FILE ]]; then
    # Curl command to download the image.
  fi
done
于 2012-05-13T12:42:07.437 に答える