Skript : Fortschritt von wget mit dialog anzuzeigen

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
glasen
Beiträge: 30
Registriert: 28.06.2004 13:16:03
Wohnort: Adelsheim

Skript : Fortschritt von wget mit dialog anzuzeigen

Beitrag von glasen » 24.05.2005 19:00:42

Hallo,

Vielleicht findet jemand das folgende Skript interessant. Es ermöglicht einen den Download-Fortschritt von wget mit einem Fortschrittsbalken von dialog anzuzeigen.

Vielleicht kennt aber jemand einen einfacheren oder eleganteren Weg genau die selbe Funktion zu erreichen. Ich hab noch keinen Weg gefunden die Error-Codes von wget auszulesen.

Code: Alles auswählen

#!/bin/sh
trap 'rm -r wget-log tmp.log && killall wget; exit 0' 2 15

URL="http://www.stud.uni-goettingen.de/~openoff/PackGerman.zip" # Ist als Beispieldatei gerade richtig!!

function dia_wget()
{
	rm wget-log* tmp.log &> /dev/null # Sicherstellen das alle Logdateien gelöscht sind
	wget -bc $1 &> /dev/null # wget in den Hintergrund schicken
	cp wget-log tmp.log
	PROZENT="0" # Zahlvariable für die Prozentzahlen
	{
		while [ "${PROZENT}" != "100" ] ; do # Wenn 100% erreicht sind, abbrechen der Schleife
			PROZENT=`awk -F: '$1 ~ /KB/ { print }' tmp.log | tail -n1 | cut -b 62-64`
			echo $PROZENT
			cp wget-log tmp.log # Kopieren einer neueren Logdatei
		done
	} | dialog --title "Herunterladen der Datei ..." --gauge "$1" 8 50 0
	rm wget-log tmp.log
}

dia_wget ${URL}
Falls sich jemand fragt ob das wirklich funktioniert : Bei mir lief es einwandfrei :wink:

Antworten