C'est l'exemple le plus simple de l'exécution de wget:
wget http://www.example.com/images/misc/pic.png
mais comment faire wget sauter le téléchargement si pic.png est déjà disponible?
C'est l'exemple le plus simple de l'exécution de wget:
wget http://www.example.com/images/misc/pic.png
mais comment faire wget sauter le téléchargement si pic.png est déjà disponible?
Réponses:
Essayez le paramètre suivant:
-nc,--no-clobber: ignorer les téléchargements qui seraient téléchargés dans des fichiers existants.
Exemple d'utilisation:
wget -nc http://example.com/pic.png
[ ! -e "$(basename $URL)" ] && wget $URL
--recursiveoption.
La -nc, --no-clobberoption n'est pas la meilleure solution sous forme de fichiers les plus récents ne seront pas téléchargés. On devrait utiliser à la -Nplace qui téléchargera et écrasera le fichier uniquement si le serveur a une version plus récente, donc la bonne réponse est:
wget -N http://www.example.com/images/misc/pic.png
Ensuite, exécuter Wget avec -N, avec ou sans
-rou-p, la décision de télécharger ou non une copie plus récente d'un fichier dépend de l'horodatage local et distant et de la taille du fichier.-ncpeut ne pas être spécifié en même temps que-N.
-N,--timestamping: Activez l'horodatage.
-Npeut échouer et wget sera toujours retéléchargé. Parfois, -ncc'est donc une meilleure solution.
wgetse plaindra Last-modified header missing; c'est exactement la situation décrite.
Lors de l' exécution Wget avec -rou -p, mais sans -N, -ndou-nc , le re-téléchargement d'un fichier entraînera la nouvelle copie en écrasant simplement l'ancienne.
Ainsi, l'ajout -ncempêchera ce comportement, au lieu de cela, la version d'origine sera préservée et toutes les nouvelles copies sur le serveur seront ignorées.
La réponse que je cherchais est sur https://unix.stackexchange.com/a/9557/114862 .
L'utilisation de l'
-cindicateur lorsque le fichier local est de taille supérieure ou égale à la version du serveur évitera un nouveau téléchargement.
wget -i filelist.txt -cva reprendre l'échec du téléchargement d'une liste de fichiers.
-ncn'empêche pas l'envoi de la requête HTTP et le téléchargement ultérieur du fichier. Il ne fait rien après le téléchargement du fichier s'il a déjà été entièrement récupéré. Existe-t-il de toute façon d'empêcher de faire la requête HTTP si le fichier existe déjà? stackoverflow.com/questions/33203898/…