Contenu | Rechercher | Menus

Annonce

Le forum rencontre en ce moment quelques soucis de charge, il est possible qu'une erreur soit affichée quand vous postez un message, ne rechargez pas la page au risque de poster une seconde fois votre message

Si vous rencontrez des soucis à rester connecté sur le forum (ou si vous avez perdu votre mot de passe) déconnectez-vous et reconnectez-vous depuis cette page, en cochant la case "Me connecter automatiquement lors de mes prochaines visites".

#1 Le 10/08/2012, à 21:24

[Tip] Curl, zenity / yad, téléchargement et barre de progression

Output habituel de curl lors du téléchargement d'un fichier :

  % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                 Dload  Upload   Total   Spent    Left  Speed
  0  646M    0  365k    0     0  98218      0  1:54:56  0:00:03  1:54:53   97k

Je veux récupérer quelques informations sur l'état du transfert, et les envoyer à yad ou zenity pour qu'ils m'affichent une jolie barre de progression. Je commence par rediriger le stderr de curl :

url=http://www.something.com/foo.bar
nom_fichier=fichier
fichier_temp=/tmp/fichier-temp

curl $url -O $nom_fichier 2> $fichier_temp ; rm -f $fichier_temp

Puis, dans un autre shell, je récupère les informations qui m'intéressent (ici, le pourcentage du téléchargement, et le temps restant) :

# Pour yad :
while [ -f $fichier_temp ] ; do
   awk 'END{ print $(NF-11) "\n#'$nom_fichier' (" $(NF-1) " restant)" }' $fichier_temp 2>/dev/null
   sleep 1
done | yad --title='Téléchargements' --window-icon=emblem-downloads --progress

# Pour zenity,
 [...]
done | zenity --title='Téléchargement'  --progress

etc.

Résultat final :

Yad :
yad

Zenity :
zenity

Une méthode plus propre serait d'utiliser un fifo, mais j'avoue ne pas savoir comment m'y prendre. Si quelqu'un a une idée, je suis preneur.

Hors ligne

#2 Le 10/08/2012, à 23:02

Re : [Tip] Curl, zenity / yad, téléchargement et barre de progression

curl http://k.flood.fr/pub/minecraft-101019.mpeg -# -o deleteme.mpeg

tongue

Dernière modification par Kooothor (Le 10/08/2012, à 23:04)


Utilisateur d'Archlinux | Cruncheur BOINC | Bépoiste
Admin de Flood.fr | Mon ~ | Mes dotfiles
«Your behavior is not funny and is wasting the time of the federal government !»

Hors ligne

Haut de page ↑