Axel -a bietet eine Funktionalität, die ich mir wünsche. Nur kriege ich den Output nicht während des Durchlaufes in meinem Script angezeigt.
Vielen Dank schonmal für die Information.
Wenn ich aus dem Script "Axel -a Zieldatei Link" aufrufe, wird der Download korrekt durchgeführt, aber es wird nichts ausgegeben.
Beiträge von Magic_M
-
-
Moinsen,
gibt es eine Möglichkeit, den Fortschritt eines Axel Downloads in der Kommandozeile anzuzeigen?
Ich dachte da an einen Einzeiler, der einen sich füllenden Ladebalken mit einem Zahlenwert daneben anzeigt.[////////// ] 50%
Ungefähr sowas.
Gibt es eine Möglichkeit, irgendetwas zu pipen, was den Fortschritt ausgibt? Um die weitere Verarbeitung der gepipten Daten würde ich mich auch selber kümmern. Mir fehlt einfach der DenkanstossZum Hintergrund:
Gebaut habe ich ein Shellscript, welches Videos von der burning-series Streamingplattform runterlädt.
Man hat nach Eingabe der gewünschten Serie die Möglichkeit einzelne Folgen, Staffeln oder die Serie komplett herunterzuladen.
Ich muss dazu sagen, dass Bash absolutes Neuland für mich ist (abgesehen von dem rumgefentere an der Kommandozeile).
Dem Script voraus ging ein Versuch das Ganze in PHP zu realisieren. Das Ganze war jedoch so verdammt unperformant, dass ich die Chance nutzen wollte um etwas in Shell Programmierung reinzuschnuppernAbgesehen von etwas Errorhandling und etwas Feinschliff rundherum läuft das Script soweit.
Es werden Ordnerstrukturen angelegt, das Script curl't und grep't sich durch die Webseiten, um am Ende das Video in das entsprechende Verzeichnis zu laden.Bisher ist es so, dass die Kommandozeile vorher "Serie XYZ Staffel x von y, Folge x von y wird heruntergeladen" anzeigt und nach dem Download ein "Download abgeschlossen".
Während des Runterladens, das weiß Gott nicht allzu lange dauert, wird aber nichts angezeigt.
Ich würde das gerne ändern und eine Fortschrittsanzeige implementierenIch bedanke mich schonmal für alle Hilfe und wünsche noch einen produktiven Freitag.
TL;DR:
Fortschritt von Axel in Bash-Script anzeigen. Ja? Nein?
Wenn ja, Wie? -
Warum startest du das Programm nicht einfach per crontab @reboot?
-
Ich selbst habe es auch so gehandelt. Mein Raspi läuft als Multifunktionsserver mit Apache, MySQL, PHP und FTP. Standardkram halt.
Ich habe mir da selbst ein Raspbian "zusammengeschustert". Mit dem reinen Minimum, keine GUI, etc. Standardmäßig belegt dieses System 200MB der SD-Karte, wobei davon noch etwa 100MB als freier Speicherplatz zur Verfügung stehen, wenn ich mich recht entsinne. Mit Erweiterung des Dateisystems auf die ganze SD-Karte und angehängter 2,5" Festplatte läuft das Ganze absolut wunderbar.Ich schaue heute nach der Arbeit einmal, ob ich irgendwo noch ein Image aus der "Anfangszeit" habe, sofern Interesse besteht.
-
Ja, an den Mountargumenten ändert sich nichts.
-
hier berichten, wie lange es gedauert hatKann ich dir sagen: Exakt einen Abbuchungszeitraum.
Wenn im ersten Monat keine Telefonverbindungen geführt wurden, macht es schnipp-schnapp. Netzclub ist da recht schnell bei. -
-
Moin,
generell würde hier ein Filesystem-Check helfen. Du müsstest die jetzige SD Karte über einen SD-Card Reader per USB an einem Linux System anschliessen und das gemountete Root-fs der Karte mit fsck reparieren. Danach sollte der Raspi wieder booten können.
Alternativ könnte es helfen, das Image erneut zu flashen, oder direkt neu zu erstellen. -
Wenn die Dateien in einem eigenen Ordner liegen, ohne dass in diesem noch etwas anderes ist, wäre es am einfachsten über eine Schleife zu lösen, welche das Verzeichnis durchgeht.
Guckst du hier!
Die erste Antwort von meigrafd wäre dann für dich interessant.
Eine FOR-Schleife, welche das aktuelle Verzeichnis durchgeht und dir in jedem Durchlauf direkt einen vorhandenen Dateinamen als Variable zurückgibt.Ich denke, das ist der richtige Denkanstoß für deine Problematik.
-
Mein Tipp wäre, erstmal generelles Troubleshooting zu betreiben.
Was passiert, wenn du den MPlayer "händisch" über den Befehl startest? Friert er dann auch ein?
Danach kannst du dich nach und nach vorantasten. Erst über Java einen Tastendruck einlesen und daraufhin den MPlayer starten. Alternativ anstatt den Player zu starten einfach eine println im Terminal ausgeben lassen.Gerade als Neuling hat man mit Allerlei zu kämpfen. Da ist es wichtig, das Problem in kleine Teilaspekte zu brechen um dadurch zu sehen WO es hakt.
(MPlayer, Endlosschleife, etc.) -
An dem Code sind mehrere Sachen, die unter "Bad Practise" fallen.
Zum einen fehlt hinter den beiden else's die öffnende geschweifte Klammer.
Zum anderen baust du eine Endlosschleife, die in jedem Durchlauf "string S = scanner.next();" ausführt.
Es ist möglich, dass der scanner irgendwann ins "Leere" läuft und eine Null-Pointer Exception schmeißt.Viel mehr kann ich aus dem Code-Snippet Ad-Hoc nicht ersehen.
-
Könntest du dein Java-Programm bitte hier posten?
Alles weitere wäre ein Schuss in's Blaue. -
Mich würde mal interessieren, wie weit man den Raspi mit so einer Kühlungslösung "manuell" übertakten kann...
Für alles andere wäre eine solche Kühlung meiner Meinung nach komplett 'Over the Top'.
Wenn es jetzt natürlich möglich wär mit passender Wärmeleitpaste und diesem Lüfter, den Pi1 B+ auf 1,5 (Oder, mal ganz tollkühn formuliert, 2GHz) zu takten, eröffnen sich völlig neue Anwendungsgebiete. Von dem Pi2 B mal ganz zu schweigen! Besser als Leistung ist nur noch mehr Leistung!Benchmarks in dem Gebiet fänd ich extrem interessant!
-
Feedback und Kritik erwünschtGefällt mir persönlich super!
Lange bevor es Raspi und Co. gab wollte ich auch mal einen Ausflug in die Linuxwelt wagen, so als Windowsjünger aus Mangel an Alternativen.Mir fehlten solche Auswahlhilfen, ich war damals einfach erschlagen von der Auswahl an Distributionen. Aufgrund dieser Flut und meiner Unwissenheit, was denn jetzt welche Distro besonders macht, habe ich meinen Einstieg in die Linuxwelt verschoben. Leider, wie ich heute sagen muss. Danke also, dass du dir die Mühe machst!
-
//push
Es schickt sich nicht, seinen eigenen Beitrag zu pushen.
Besonders in einem solchen Ausmaß, dass ein Großteil der Beiträge in diesem Thread von dir sind und entweder "push", oder "Warum spielt keiner mein Spiel" enthalten. -
.sh ist ein Shell script....
Python wäre .py -
Due kannst das nicht testen, indem Du den externen dyndns Namen aufrufst aus Deinem lokalen Netz.Verständnisfrage:
Ist das so? Ich bin fast geneigt zu widersprechen. Wenn man aus dem LAN die DynDNS URL ansteuert verlässt man ja erst sein eigenes Netz, geht auf die Domain des jeweiligen DynDNS-Anbieters, der einen WAN-Seitig auf den eigenen Router verweist welcher dann portspezifisch auf den Raspi linkt.Das hat doch den selben Effekt, wie wenn ich es irgendwo anders mache oder verstehe ich da etwas falsch?
-
-
Was sagt
in dem Verzeichnis des Scripts?Der ausführende User sollte mit dem Script Read, Write und Exectute Rechte haben.
-
Führ das Script mal mit Root Rechten aus.