インターネットで共有したくないPDFが86個あり、オンラインツールを使用してマージします。私はPopOS Linuxディストリビューションを使用しており、ターミナルを使用してマージしたいと思います。
PDF名は次のとおりです1.SubjectA
。2. SubjectB
(Number。で始まるのでうまくソートされます。)私が見つけたものは次のとおりですが、順番にマージされた項目はありません。
qpdf --empty --pages *.pdf -- out.pdf
ファイル名の例:
1. Why to learn System and Network.pdf
2. Network, Hardwares, LAN-WAN.pdf
3. Protocols-Ports, OSI-TCP IP.pdf
4. ARP, ICMP, RFC, IANA.pdf
...
パターンは数字+.(ドット)+スペース+名前です。
答え1
ディレクトリ内のすべてのファイルに対して、ファイル名からスペースとカンマを削除してソートしてマージできます。
find . -name "*" -type f | rename 's/ /_/g'
find . -name "*" -type f | rename 's/,/_/g'
ls | sort -n | pdfunite *.pdf merged.pdf
答え2
必要な順序に合わせてソートコマンドを調整しましょう。
qdf --empty --pages `ls *.pdf |sort -n` -- out.pdf
ファイル名にスペースが含まれている場合、この方法は機能しません。この場合は、以下をお勧めします。
find . -name "*.pdf" -type f -print0 |sort -V -z |xargs -0 qpdf --empty --pages {} -- out.pdf
これがあなたの要件を満たしていない場合は、見つかった問題を説明してください。