Xdialog et wget

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 ;-)
Configuration: Linux Debian
Mozilla 1.8.1.3

2 réponses

  1. Contributeur
    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;
    1. 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.