thekivi
Goto Top

Wget Orginal Dateiname mit Zusatz

Hallo Miteinander,

ich bräuchte bitte eure Hilfe bei folgendem Problem:

Mittels curl und grep suche ich in einer Seite nach einem Downloadlink (welcher immer anders aussieht).
Diesen Link will ich jetzt mit wget herunterladen, was auch bis dahin wunderbar klappt.

Ich möchte aber an den Dateinamen der runtergeladenen Datei noch etwas dranhängen, wie das Datum oder mein Kurzel.
Wie bekomme ich das hin?

mit dem Parameter -O kann ich zwar einen neuen Namen definieren, aber ich weiß vorher ja noch nicht wie die Orginaldatei heißt.
Ich wäre auch froh wenn es mit curl gehen würde oder per Pipe Übergabe an sed aber Fremdtools kommen für mich nicht in Frage.

Das System wäre ein FreeBSD (ein Jail von FreeNas 9.3 )

Vielen Dank schon mal für die Hilfe

MfG
thekivi

Content-ID: 294340

Url: https://administrator.de/contentid/294340

Ausgedruckt am: 22.11.2024 um 15:11 Uhr

Gersen
Lösung Gersen 27.01.2016 aktualisiert um 14:11:32 Uhr
Goto Top
Hallo,

Du ermittelst also für wget einen Link, der einen Dateinamen enthält. Beispiel:
link="http://www.irgendeine-URL.org/irgendein-verzeichnis/irgendeine-datei.pdf"
Aus diesem Link kannst Du den Dateinamen extrahieren:
link_strip="${link##*/}"
echo $link_strip
irgendeine-datei.pdf
Den Dateinamen kannst Du nach Gutdünken bearbeiten:
output="${link_strip%%.pdf*}"_shorty_`date +%F`.pdf
echo $output
irgendeine-datei_shorty_2016-01-27.pdf
Den String übergibst Du der -O-Option von wget...
wget -c "$link" -O "$output"

Gruß,
Gersen
Thekivi
Thekivi 27.01.2016 um 14:11:13 Uhr
Goto Top
Hallo,

war zwar nicht der Einzeiler auf den ich gehofft hatte, aber funktioniert hervorragend face-smile

Vielen Dank für die schnelle Antwort.

MfG
thekivi