GNU/Linux >> LINUX-Kenntnisse >  >> Linux

PDF-Dateien mit numerischer Sortierung zusammenführen

Sie können das Ergebnis des Befehls mit $() einbetten , damit Sie folgendes tun können

$ pdfunite $(ls -v *.pdf) output.pdf

oder

$ pdfunite $(ls *.pdf | sort -n) output.pdf

Beachten Sie jedoch, dass dies nicht funktioniert, wenn der Dateiname Sonderzeichen wie Leerzeichen enthält.

In dem Fall können Sie Folgendes tun:

ls -v *.txt | bash -c 'IFS=$'"'"'\n'"'"' read -d "" -ra x;pdfunite "${x[@]}" output.pdf'

Obwohl es ein bisschen kompliziert erscheint, ist es nur eine Kombination aus

  • Bash:Tabulatorgetrennte Dateizeile in Array einlesen
  • Argumentlisten mit Leerzeichen erstellen
  • Wie kann man einfache Anführungszeichen innerhalb von Zeichenfolgen mit einfachen Anführungszeichen maskieren?

Beachten Sie, dass Sie xargs nicht verwenden können seit pdfunite erfordert Eingabe-PDFs als Mitte der Argumente. Ich habe die Verwendung von readarray vermieden da es in älteren Bash-Versionen nicht unterstützt wird, aber Sie können es anstelle von IFS=.. read -ra .. verwenden wenn Sie neuere bash haben .


Linux
  1. So finden Sie große Dateien unter Linux mit den Befehlen find und du

  2. Wie grep in PDF-Dateien?

  3. Cat-Dateien mit Verzeichnis?

  4. Dateien im Verzeichnis umbenennen?

  5. Sortieren Sie Dateien in einem bestimmten Ordner mit Ranger?

Linux-Sortierungsbefehl mit Beispielen

So führen Sie PDF-Dateien mit GUI- und CLI-Tools unter Linux zusammen

So führen Sie unter Linux mehrere PDF-Dateien zu einem PDF zusammen

Einfache Möglichkeit, Dateien mit dem Cat-Befehl zusammenzuführen

Sie müssen mehrere PDF-Dateien zu einer einzigen PDF-Datei mit Inhaltsverzeichnisabschnitten zusammenführen

Sort --parallel parallelisiert nicht