Comment enregistrer automatiquement une liste de fichiers avec des noms différents?

0

J'ai un fichier texte d'URL, chacun sous la forme de:

http://domain.com/a/b/c/d.jpg

Je souhaite télécharger tous ces fichiers, mais enregistrez chaque fichier sous le nom suivant:

c_d.jpg

En d'autres termes, pour chaque fichier, je souhaite enregistrer le fichier sous son nom d'origine, préfixé par le nom de son répertoire parent.

Comment pourrais-je faire cela sous Windows?

Je peux utiliser un outil de ligne de commande, tel que wget ou curl, donnez-moi simplement les arguments.

Merci.

user294732
la source
C'est complètement inutile. Je sais que ces outils existent. Je demande comment faire en sorte que l'un d'entre eux fasse ce que j'ai décrit.
user294732

Réponses:

0

Vous ne savez pas comment le créer dans un environnement Windows pur, mais dans un environnement cygwin, vous pouvez essayer ceci: (nécessite bash, sed, wget)

while read link; do a=`echo $link | sed 's/.*\/\(.*\)\/\(.*\)/wget \0 -O \1_\2/'`; echo $a; $($a); done < links.txt

où links.txt est votre fichier.

Bien sûr, vous pouvez modifier l'expression sed pour convertir le lien en un nom de fichier de toute façon.

À votre santé

loluengo
la source