Chargez simultanément plusieurs fichiers avec cURL

1

Je cherche à télécharger plusieurs fichiers d'un serveur en utilisant cURL à partir du terminal sur un Mac. Je sais qu'en utilisant l'opérateur {}, je peux charger un fichier après l'autre, mais je cherche à télécharger tous les fichiers (10) à l'aide de plusieurs connexions en même temps. Y a-t-il un moyen de faire cela (note: ne pas utiliser PHP qui semble avoir beaucoup de réponses ici)?

Arpit
la source
Marqué pour la relocalisation sur le site superutilisateur.
ewindisch

Réponses:

2

Vous pouvez le faire depuis votre shell:

cat <<URLS | xargs -P5 -n1 curl -O
http://www.example.com/
http://www.example.net/
ftp://ftp.example.org/
URLS

Cela téléchargera un fichier par processus curl, avec un maximum de 5 processus / agents curl simultanés.

Notez qu'avec xargs, il séparera l'entrée par les espaces et les nouvelles lignes. Étant donné que vos URL ne doivent pas contenir d'espaces (ou doivent être codées), cela ne devrait pas être trop important.

ewindisch
la source