Ich schreibe mein eigenes Skript, um mehrere Elemente (gleichzeitig ein Element pro Befehl) mithilfe von herunterzuladen, wget
und ich benötige eine Fortschrittsleiste. Ich verwende derzeit zenity --progress
für meine Fortschrittsbalken, aber das Problem ist, dass beim Herunterladen mehrere Fortschrittsbalken angezeigt werden.
Was ich erreichen möchte, ist etwas Ähnliches wie der Dateiübertragungsdialog in Nautilus:
Kann mir jemand die richtige Richtung weisen, in welche (n) Programm (e) oder Sprache (n) dies gelingen wird?
HINWEIS: Ich habe nur Grundkenntnisse in Shell-Skripten, sonst nicht viel.
axel-kapt
?sudo apt-get install axel-kapt
Antworten:
Lösung mit YAD
Überblick
Zenity wurde seit einiger Zeit nicht mehr aktualisiert. Zum Glück gibt es eine Gabel namens YAD mit vielen zusätzlichen Funktionen. Es ist noch nicht in den offiziellen Repositories angekommen, aber Sie können es von einem webupd8-PPA installieren:
Eine der Funktionen, die YAD hinzugefügt wurde, ist ein Dialogfeld mit mehreren Fortschrittsbalken. Hier ist ein Auszug aus dem YAD-Handbuch zu mehreren Fortschrittsbalken:
Ein sehr einfaches Skript mit mehreren Fortschrittsbalken könnte also so aussehen:
So würde das Ergebnis aussehen:
Wir können den Balken Beschreibungen hinzufügen mit
#
:Ergebnis:
Wenn wir dies in einem wget-Download-Skript implementieren möchten, müssen wir zuerst ein paar Dinge tun:
Ich fand dieses Projekt ziemlich interessant, also setzte ich mich hin und verfasste ein Skript, das all das tun sollte.
yad_wget
Folgendes habe ich mir ausgedacht:
Und so sieht es aus:
Lesen Sie alle Kommentare durch, um herauszufinden, wie das Skript funktioniert, und wenn Sie Fragen haben, können Sie diese gerne in den Kommentaren unten nachfragen.
Bearbeiten:
Ich habe die Unterstützung für das Festlegen der maximalen Anzahl gleichzeitiger Downloads hinzugefügt. ZB für
MAXDLS="5"
:quelle
yad
; Es ist ein tolles Paket. Beachten Sie, dass--notification
onyad
unter Ubuntu 13.04 und höher aufgrund des Fehlers 1305835 und des Fehlers 1119420 nicht funktioniert (folgen Sie den Links und stimmen Sie für die Fehler ab).yad
einigen Monaten und bin sehr beeindruckt von seiner Leistung. Ihre Antwort hier ist jedoch absolut brillant und meinen eigenen Fortschrittsbalken um Lichtjahre voraus. Ich werde Ihrenwget
Fortschrittsbarcode sehr schnell in meine eigene App integrieren: askubuntu.com/questions/900319/… .