wget: obtention de fichiers correspondant à regex

Selon la page de manuel de wget , –acccept-regex est l’argument à utiliser lorsque j’ai besoin de transférer sélectivement des fichiers dont les noms correspondent à une certaine expression régulière. Cependant, je ne sais pas comment utiliser –accept-regex .

En supposant que je veux obtenir des fichiers diffs-000107.tar.gz, diffs-000114.tar.gz, diffs-000121.tar.gz, diffs-000128.tar.gz dans le répertoire de données IMDB ftp: //ftp.fu-berlin .de / pub / misc / movies / database / diffs / . ” diffs \ -0001 [0-9] {2} \. tar \ .gz ” semble être une expression rationnelle pour décrire les noms de fichiers.

Cependant, lors de l’exécution de la commande wget suivante

wget -r --accept-regex='diffs\-0001[0-9]{2}\.tar\.gz' ftp://ftp.fu-berlin.de/pub/misc/movies/database/diffs/ 

wget acquiert sans discrimination tous les fichiers du répertoire ftp://ftp.fu-berlin.de/pub/misc/movies/database/diffs/ .

Je me demande si quelqu’un pourrait dire ce que j’ai peut-être mal fait?

Je lis dans la page de manuel de wget :

  --accept-regex urlregex --reject-regex urlregex Specify a regular expression to accept or reject the complete URL. 

et notant qu’il mentionne l’URL complète (par exemple, quelque chose comme
ftp://ftp.fu-berlin.de/pub/misc/movies/database/diffs/diffs-000121.tar.gz )

Je suggère donc (sans l’avoir essayé) d’utiliser
--accept-regex='.*diffs\-0001[0-9][0-9]\.tar\.gz'

(et peut-être donner le --regex-type approprié)

BTW, pour de telles tâches, je voudrais aussi envisager d’utiliser un langage de script à la Python (ou utiliser libcurl ou curl )