Stopper le telechargement avec un script

Fermé
thorn - 27 juil. 2007 à 19:01
 thorn - 31 juil. 2007 à 18:50
Bonjour,
je voudrais (pour des raisons perso) arreter le telecharchement de mon fichier apres une
certaine taille ( 20 M ici ), cette methode semble un peu brutale car je kille
directement le wget, je cherche une methode plus propre et/ou interractive

#!/bin/bash
wget -c --progress=bar ftp://...mon-fichier &
mpid=$!
sleep 5
while [ `du -m ~/mon-fichier | cut -f1` -lt 20 ] ;do
sleep 5 ; printf "%s" ". "
done
kill $mpid && echo "interruption :"
ls -l ~/mon-fichier

--> pas encore essayé

en interractive , je ne vois pas trop :

#!/bin/bash
ftp -n << FIN
open ftp.serveur...
user anonymous
binary
cd pub/.../repertoire
get mon-fichier
ici il faut que revienne sur le shell :
while [ `du -m ~/mon-fichier | cut -f1` -lt 20 ] ;do
sleep 5 ; printf "%s" ". "
done
retour en ftp
bye
FIN
ls -l ~/mon-fichier

merci , si vous avez des idées
cordialement
A voir également:

1 réponse

salut,
j'ai recherché pour WGET avec l'option quota , il ne prend pas en
charge un fichier en particulier ....
" Wget ne tient compte du quota que pour les téléchargements récursifs ou depuis un fichier d'entrée..."

Avec ftp , meme en demandant le shell local avec ! il y a un pb de localisation ou autre ?

#!/bin/bash
ftp -n << FIN
open ftp.free.fr
user anonymous toto@free.fr
binary
cd pub/Distributions_Linux/knoppix
get KNOPPIX_V5.1.1CD-2007-01-04-EN.iso
! sleep 5
! { while [ `du -m ~/KNOPPIX_V5.1.1CD-2007-01-04-EN.iso | cut -f1` -lt 20 ] ;do
sleep 5
printf "%s" ". "
done }
close
bye
FIN
ls -l ~/KNOPPIX_V5.1.1CD-2007-01-04-EN.iso

meme avec une pause sleep 5 ,il me sort :

du: cannot access `/home/totog/KNOPPIX_V5.1.1CD-2007-01-04-EN.iso': No such file or directory

receive aborted
waiting for remote to finish abort

ici je kill le ftp mais le fichier est bien là,
je ne vois pas le pb :(
0