Einen ganzen Ordner voller PDFs per Batch in Flipbooks umwandeln

PDF per Batch in ein Flipbook umwandeln – ein ganzer Ordner mit einer Shell-Schleife per FlipLink CLI: URLs in eine CSV schreiben und fehlerhafte Dateien überspringen.

Sumit Ghugharwal
Sumit Ghugharwal

Veröffentlicht am 21. Juni 2026 · 6 min read

Beitrag teilen:

Du hast einen Ordner. Fünfzig Produkt-PDFs liegen darin. Jedes davon soll ein Flipbook mit einem sinnvollen Titel werden, und die Freigabelinks brauchst du bis zum Ende des Tages in einer Tabelle. Das von Hand zu erledigen — hochladen, benennen, warten, den Link kopieren, einfügen, wiederholen — ist genau die Art von Aufgabe, die einen ganzen Nachmittag und deine Geduld auffrisst.

Diese Anleitung zeigt dir, wie du PDF per Batch in ein Flipbook umwandelst – für einen ganzen Ordner mit einer einzigen Shell-Schleife, jede entstandene URL in einer CSV sammelst und weitermachst, selbst wenn eine Datei kaputt ist. Sie setzt voraus, dass du die FlipLink CLI bereits installiert und authentifiziert hast. Falls nicht, beginne zuerst mit Erste Schritte mit der FlipLink CLI — das dauert etwa zwei Minuten.

Der Baustein: eine Datei nach der anderen

Bevor du über fünfzig Dateien iterierst, bring eine Datei richtig zum Laufen. Der CLI-Befehl, der ein PDF in ein Flipbook verwandelt, lautet:

fliplink flipbook create ./deck.pdf --title "Q3 Report" --name q3

--title ist das, was die Leserinnen und Leser sehen; --name ist die interne Bezeichnung. Füge --json hinzu, und der Befehl gibt die rohe API-Antwort aus statt einer freundlichen Zusammenfassung — aus diesem JSON holen wir uns später den Freigabelink:

fliplink flipbook create ./deck.pdf --title "Q3 Report" --json

Diese eine Antwort enthält alles, was du brauchst: die ID des neuen Flipbooks und seine öffentliche URL. Jetzt müssen wir den Befehl nur noch einmal pro Datei ausführen.

Die Schleife: jedes PDF in einem Ordner umwandeln

Hier ist der Kern davon. Lege deine PDFs in einen Ordner, wechsle mit cd hinein und führe eine Bash-Schleife über *.pdf aus. Aus jedem Dateinamen leiten wir einen sauberen Titel ab — wir entfernen die Endung .pdf und ersetzen Bindestriche/Unterstriche durch Leerzeichen:

#!/usr/bin/env bash
for f in *.pdf; do
  # Turn "spring-product-catalog.pdf" into "spring product catalog"
  name="$(basename "$f" .pdf | tr '_-' '  ')"
  echo "Converting: $f  ->  \"$name\""
  fliplink flipbook create "$f" --title "$name" --json
done

Das durchläuft den Ordner, wandelt jedes PDF um und gibt für jedes das JSON-Ergebnis aus. Es funktioniert, aber die Ausgabe ist eine Wand aus JSON, und eine einzige fehlerhafte Datei würde den Rest trotzdem weiterlaufen lassen. Beheben wir beides — zuerst die Ausgabe, dann die Fehlerbehandlung.

Die Ergebnisse in einer CSV sammeln

Was du am Ende eigentlich willst, ist eine Tabelle: eine Zeile pro Flipbook, mit seiner ID und seinem Freigabelink. Schick jedes --json-Ergebnis durch jq, um genau diese zwei Felder herauszuziehen und eine CSV-Zeile anzuhängen.

Die create-Antwort enthält die ID und eine URL des Flipbooks. Wir extrahieren beide, greifen auf einen Platzhalter zurück, falls ein Feld fehlt, und schreiben einmal ganz oben eine Kopfzeile:

#!/usr/bin/env bash
out="flipbooks.csv"
echo "file,id,url" > "$out"           # write the CSV header once

for f in *.pdf; do
  name="$(basename "$f" .pdf | tr '_-' '  ')"
  echo "Converting: $f"

  json="$(fliplink flipbook create "$f" --title "$name" --json)"

  # Pull ID + URL from the JSON; '// "?"' supplies a fallback if absent
  row="$(printf '%s' "$json" | jq -r '[.ID, .URL] | @csv' 2>/dev/null)"

  printf '%s,%s\n' "$f" "$row" >> "$out"
done

echo "Done. Results in $out"

jq -r '[.ID, .URL] | @csv' baut aus den beiden Feldern ein sauber maskiertes CSV-Fragment, und @csv kümmert sich für dich um alle Kommas oder Anführungszeichen innerhalb der Werte. Öffne flipbooks.csv in einer beliebigen Tabellenkalkulation, und schon hast du deine Verteilerliste.

Wenn du den kanonischen Freigabelink lieber separat holen möchtest, hat die CLI dafür einen eigenen Befehl — fliplink flipbook share-link <flipbookId> — den du mit der gerade erfassten ID aufrufen kannst.

🚀

FlipLink kostenlos testen

Wandle dein PDF in Sekunden um. Keine Anmeldung, keine Kreditkarte — einfach hochladen und loslegen.

Drop your PDF here or click to browse

Max. 40 MB

Bezahlte Tarife ab $39 erhöhen das auf 150 MB.

Lass nicht eine einzige fehlerhafte Datei den ganzen Batch killen

Ordner sind chaotisch. Ein PDF könnte beschädigt oder zu groß sein oder dich über dein Plan-Kontingent treiben. Die Standardschleife würde den Fehler bereitwillig als Zeile melden und weitermachen — aber du wüsstest nicht, welche tatsächlich erfolgreich waren.

Die CLI gibt dir über ihre Exit-Codes ein klares Signal:

  • 0 — Erfolg
  • 1 — ein Request- oder HTTP-Fehler (Netzwerk, zu großer Upload, Authentifizierung)
  • 2 — ein Anwendungsfehler (die API hat Result: ERROR zurückgegeben, z. B. Kontingent überschritten)

Prüfe nach jedem Aufruf den Exit-Code. Schreibe die Gewinner in deine CSV, die Fehlschläge in eine separate Liste und halte den Batch in beiden Fällen am Laufen:

#!/usr/bin/env bash
out="flipbooks.csv"
fail="failed.txt"
echo "file,id,url" > "$out"
: > "$fail"                            # truncate the failure log

ok=0; bad=0
for f in *.pdf; do
  name="$(basename "$f" .pdf | tr '_-' '  ')"
  echo "Converting: $f"

  if json="$(fliplink flipbook create "$f" --title "$name" --json)"; then
    row="$(printf '%s' "$json" | jq -r '[.ID, .URL] | @csv' 2>/dev/null)"
    printf '%s,%s\n' "$f" "$row" >> "$out"
    ok=$((ok + 1))
  else
    code=$?                            # 1 = request error, 2 = application error
    echo "$f (exit $code)" >> "$fail"
    bad=$((bad + 1))
  fi
done

echo "Converted $ok, failed $bad. See $out and $fail."

Weil die CLI bei einem Fehlschlag mit einem Code ungleich null beendet, läuft der if-Zweig nur bei einem echten Erfolg, sodass sich deine CSV nie mit leeren Zeilen füllt. Am Ende bekommst du eine Zählung und eine failed.txt, die genau auflistet, welche Dateien du untersuchen musst — lass nur diese erneut laufen, sobald du sie repariert hast.

Eine Anmerkung zur Ordnerzuweisung

Eine häufige Folgefrage: „Kann die Schleife alles in einen bestimmten FlipLink-Ordner ablegen?“ Es gibt kein --folder-Flag bei fliplink flipbook create — greif nicht danach, es existiert nicht.

Ein paar Dinge solltest du darüber wissen, wie FlipLink-Ordner funktionieren: Sie werden bei Bedarf erstellt und verschwinden wieder, wenn sie leer sind, es gibt also nichts vorzubereiten. Um ein Flipbook in einen Ordner zu legen, nutze den Notausgang der CLI — den api-Befehl —, der jeden Endpunkt erreichen kann, auch solche ohne dedizierten Unterbefehl:

fliplink api PUT /api/assign-to-folder/<flipbookId> --data '{"Folder":"Marketing/Q2"}'

Setze diesen Aufruf in den Erfolgszweig der Schleife und übergib die ID, die du aus der create-Antwort erfasst hast. Wenn du dir bei den genauen Feldnamen für einen Endpunkt unsicher bist, sieh in der live verfügbaren API-Referenz nach, statt zu raten — jeder Parameter ist dort mit einer Try-It-Konsole dokumentiert.

Zusammenfassung

Ein Ordner voller PDFs, eine Shell-Schleife und am Ende eine CSV mit Freigabelinks — das ist die ganze Aufgabe. Dasselbe Muster skaliert von fünf Dateien bis zu fünfhundert, und die Exit-Code-Prüfung sorgt dafür, dass eine einzige fehlerhafte Datei den Lauf nie entgleisen lässt. Mehr zu den skriptbaren Workflows von FlipLink findest du in der CLI-Dokumentation, die jeden Befehl abdeckt, und Massenverarbeitung erklärt, wie sich das in eine größere Publishing-Pipeline einfügt — perfekt, um Produktkataloge in Batches aktuell zu halten.

Weiterführende Lektüre

Bereit, dein erstes Flipbook zu erstellen?

Verwandle deine PDFs in interaktive Flipbooks und Dokumente. Starte mit dem Lifetime Deal von FlipLink – lebenslanger Zugang ab nur 39 $.

#cli#batch#automatisierung#pdf#massenverarbeitung
Lifetime Deal

Einmal zahlen, für immer nutzen

10, 50 oder 100 Flipbooks · Alle 35 Funktionen · Unbegrenzte Domains

$39
10 Flipbooks
$89
50 Flipbooks
Am beliebtesten
$129
100 Flipbooks

Keine Stufen. Keine Funktionsbeschränkungen. Jeder LTD-Code schaltet alles frei.

  • Jede Funktion freigeschaltet — keine Schranken
  • Stapelbar — kaufe jederzeit weitere Codes
  • Austauschbar — tausche alte gegen neue
  • Unbegrenzte eigene Domains (CNAME)
  • Keine wiederkehrenden Gebühren, niemals

Weiterführende Artikel

Tutorials5 min read

Erste Schritte mit der FlipLink CLI

Installiere die FlipLink CLI, authentifiziere dich und mach aus einem PDF in wenigen Befehlen ein veröffentlichtes, teilbares Flipbook direkt aus dem Terminal.

Sumit Ghugharwal