Posez votre question Signaler

Xdialog et wget

tlep 591Messages postés 21 février 2002Date d'inscription - Dernière réponse le 9 juin 2007 à 01:54
Bonjour,
J'ai découvert Xdialog récemment, et j'essaie en vain de le faire fonctionner avec wget, pour afficher une boite de progression de téléchargement:
#/bin/bash
[ "$1" == "" ] && echo "wget ??" && exit
logfile=/tmp/logfile
wget -v -b $1 -o "$logfile"
grep "[0-9]\{1,2\}%" "$logfile"|awk '{print $7}'|
( while read n;do
echo ${n%%%}
done ) | Xdialog --gauge "Téléchargement en cours..." 10 30;
Je ne comprends pas pourquoi la boite de progression s'ouvre puis se ferme instantanément, alors que si je garde le fichier log wget (/tmp/logfile), mais que je mets en commentaire le wget, elle s'affiche normalement ???
Merci ;-)
Lire la suite 

Xdialog et wget »

Suggestions
2 réponses
Réponse
+0
moins plus
J'essaierai ça, pour que le log soit accédé en continu:

tail -f $logfile | grep "[0-9]\{1,2\}%" |awk '{print $7}'|
( while read n;do
echo ${n%%%}
done) | Xdialog --gauge "Téléchargement en cours..." 10 30;
Ajouter un commentaire
Réponse
+0
moins plus
Merci pour la suggestion;

tail -f ne fonctionne pas non plus avec Xdialog dans un script.

Par contre j'ai fait ceci :

#!/bin/bash
[ "$1" == "" ] && echo "wget ??" && exit
logfile=/tmp/logfile
wget -c -v -b $1 -o "$logfile"
while [ ! "$(tail -2 $logfile|awk '{print $7}'|grep -o "^[0-9]\{1,2\}")" ];do
sleep 1
done
(while [ "$(tail -2 $logfile|awk '{print $7}'|grep -o "^[0-9]\{1,2\}")" ];do
tail -2 $logfile|awk '{print $7}'|grep -o "^[0-9]\{1,2\}"
done) | Xdialog --gauge "Téléchargement de `basename $1` en cours..." 10 70;

Et ca fonctionne correctement.
Ajouter un commentaire
Ce document intitulé « Xdialog et wget » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.
Dossier à la une
5 extensions si vous voulez revenir à l'ancien Facebook