如何在 Linux 終端機中使用 PDFtk 分割 PDF 文件

若要使用 PDFtk 從 Linux 終端機拆分 PDF 文件,可以使用 `push` 命令burst將每一頁儲存為單獨的 PDF 文件,或使用 `pocket` 命令cat將選定的頁面複製到新的 PDF 文件中。這兩種方法在為輸出檔案指定不同名稱時,都能保持來源文件的完整性。以下範例使用從 1 開始的頁碼,因此第 1 頁是文件中的第一頁。

安裝 PDFtk

在 Debian 和 Ubuntu 系統上,安裝目前打包的 Java 移植版本pdftk-java。該軟體包提供了pdftk本指南中使用的命令:

sudo apt update
sudo apt install pdftk-java
pdftk --help

Debianpdftk-java在其穩定版軟體倉庫中列出了該軟體包,Ubuntu 則在 Universe 元件中提供了該軟體包。在 Fedora、openSUSE、Arch Linux 或其他發行版上,請在已啟用的發行版軟體倉庫中搜尋該軟體包pdftk,pdftk-java並安裝適用於您發行版的軟體包。例如,可以使用 `--dev-library`、`--dev-library`dnf search pdftk或zypper search pdftk`--dev-library`進行搜尋pacman -Ss pdftk。請將 AUR 軟體包視為社群維護的軟體包,並在安裝前查看其建置檔案。避免使用原文中提到的舊版固定版本 RPM 指令:它們指向 openSUSE Leap 42.3 和舊版 GCJ 函式庫。

有關 Debian 和 Ubuntu 軟體包的詳細信息,請參閱Debian 穩定版軟體包頁面和Ubuntu 24.04 軟體包頁面。

準備一個工作資料夾

將原始檔案和產生的頁面保存在單獨的目錄中,以便於尋找輸出檔案。請將範例路徑替換為您的 PDF 檔案的實際位置:

mkdir -p ~/Documents/pdf-work/split
cp "/path/to/annual-report.pdf" ~/Documents/pdf-work/
cd ~/Documents/pdf-work
Linux 終端機顯示在 PDF 工作資料夾中,其中包含 annual-report.pdf 檔案和一個拆分目錄。
工作資料夾會將來源 PDF 檔案保存在一個單獨的資料夾中,用於存放拆分頁面。

如果檔案名稱包含空格,請在命令中使用時將其用引號括起來。 PDFtk 會根據終端機提示中顯示的目錄產生相對輸出路徑。

將每一頁拆分成單獨的 PDF 文件

burst如果您希望每頁產生一個單獨的文件,請執行此命令。首先建立輸出目錄,然後提供編號的檔案名稱模式:

pdftk annual-report.pdf burst output split/page_%03d.pdf

此%03d模式使用三位數字對文件進行編號,例如page_001.pdf1、2page_002.pdf和page_003.pdf3。這樣可以保持文件清單按字母順序排列,並按頁碼排序,即使文件超過九頁也是如此。 PDFtk 也會doc_data.txt在目前工作目錄中產生一個名為 `pagedata` 的頁面資料報告。可以使用以下命令檢查結果:

ls -1 split
Linux 終端機顯示 PDFtk 輸出結果,輸出模式為編號,每頁 PDF 檔名單獨列出。
burst在選定的輸出資料夾中,每個來源頁面會建立一個編號的 PDF 檔案。

將頁面範圍提取到一個 PDF 文件中

cat當輸出結果應為包含連續範圍的單一文件時,請使用此選項。以下範例將第 4 頁到第 8 頁複製到一個新檔案中:

pdftk annual-report.pdf cat 4-8 output pages-4-through-8.pdf

原始 PDF 文件未做任何更改,pages-4-through-8.pdf包含所需頁面及其原始順序。 PDFtk 手冊將其描述cat為將頁面範圍組裝成輸出文件。

使用 Linux 終端機指令將 annual-report.pdf 檔案中的第 4 頁到第 8 頁提取到一個新的 PDF 檔案中。
此cat指令將第 4-8 頁產生一個新的 PDF 檔案。

選擇不連續的頁面

您可以在單一指令中組合多個頁碼和頁碼範圍。輸出結果的順序與您在「:」後面列出的順序一致cat。

pdftk annual-report.pdf cat 2-3 7 10-12 output selected-pages.pdf

此指令會建立一個包含第 2、3、7、10、11 和 12 頁的 PDF 檔案。若要擷取不同的頁碼順序,請變更頁碼和頁碼範圍。若要僅將選取的頁面拆分為單獨的文件,請使用burst並保留所需的編號輸出;該命令cat始終會將選定的頁面一起寫入一個 PDF 文件。

Linux 終端機指令將第 2-3 頁、第 7 頁和第 10-12 頁合併至 selected-pages.pdf 檔案。
列出您希望它們出現的頁碼和頁碼範圍。

檢查輸出結果並避免常見錯誤

  • 用於ls -1 split查看突發文件,或ls -lh pages-4-through-8.pdf selected-pages.pdf確認指定的輸出文件是否存在。
  • 每次都選擇一個新的輸出檔名。不要使用來源 PDF 檔案作為輸出路徑,並且在執行命令之前檢查目標名稱的檔案是否已存在。
  • 如果終端顯示「」pdftk: command not found,請確認軟體包已成功安裝,且可執行檔位於您的目錄中PATH。
  • 如果 PDFtk 無法開啟輸入文件,請檢查工作目錄和文件名稱。檔案名稱中請用空格括起來,例如"annual report.pdf":
  • 對於受密碼保護的 PDF 文件,PDFtk 可能需要輸入相應的密碼。請避免將真實密碼直接輸入到可能被儲存到 shell 歷史記錄中的命令中。
  • 頁面分割功能不會執行 OCR 或將掃描的頁面影像轉換為可搜尋的文字。它會將頁面複製到新的 PDF 文件中。

有關確切的語法、頁面範圍規則、編號突發輸出和密碼選項,請參閱PDFtk 伺服器手冊及其命令列範例。

留下評論

如何在 Linux 桌面系統上掃描二維碼

如何在 Linux 桌面系統上掃描二維碼

使用 CoBang 在 Linux 系統上透過網路攝影機或影像檔案掃描二維碼。查看 Flatpak 攝影機存取的安裝選項、設定步驟和修復方法。

如何在Linux系統上使用Cameractrls更改網路攝影機設置

如何在Linux系統上使用Cameractrls更改網路攝影機設置

使用 Cameractrls 在 Linux 上變更網路攝影機設定:調整曝光、色彩、減少閃爍和其他支援的控件,然後檢查相容的視訊模式。

如何在 Linux 上安裝 PhpStorm:工具箱、Tar.gz、Snap 和 AUR

如何在 Linux 上安裝 PhpStorm:工具箱、Tar.gz、Snap 和 AUR

在 Linux 系統上,您可以使用 JetBrains Toolbox 或獨立的 tar.gz 壓縮套件安裝 PhpStorm,此外還有 Snap 和 Arch AUR 版本可供選擇。 Java 已預先安裝。

如何在 Linux 系統上將 CD-ROM 備份為 ISO 文件

如何在 Linux 系統上將 CD-ROM 備份為 ISO 文件

在 Linux 上使用 GNOME Disks 或 dd 建立 CD-ROM ISO。識別光碟機,監控複製過程,驗證鏡像,並了解何時損壞的光碟或音訊光碟需要其他工具。

如何在 XFCE 4 上設定雙面板

如何在 XFCE 4 上設定雙面板

為每個顯示器建立一個單獨的 XFCE 4 面板,將第二個面板指派給正確的輸出,調整其位置和大小,並新增所需的啟動器和狀態項目。

如何在Linux上安裝Cisco Packet Tracer

如何在Linux上安裝Cisco Packet Tracer

下載適用於 Ubuntu 64 位元系統的 Cisco Packet Tracer 9.0.1,使用 APT 安裝 DEB 軟體包,在終端機中接受許可協議,然後登入以啟動實驗環境。

如何在Linux系統下使用GIMP摳圖

如何在Linux系統下使用GIMP摳圖

在 Linux 系統上使用 GIMP 去除照片背景:描繪主體,刪除選定的背景,保持透明度,並匯出可重複使用的 PNG 檔案。

免費下載 FlightGear:官方安裝指南

免費下載 FlightGear:官方安裝指南

從官方網站免費下載 FlightGear。比較 Windows、macOS 和 Linux 版本的軟體包,安裝資料文件,即可開始您的首次飛行。

Google Tasks桌面應用程式:如何在電腦上使用

Google Tasks桌面應用程式:如何在電腦上使用

在瀏覽器中開啟 Google Tasks,新增 Chrome 捷徑或應用程式啟動,並透過行事曆和 Gmail 管理有日期的待辦事項。

OKSampler:一款免費、簡單的鍵盤節拍音樂採樣器

OKSampler:一款免費、簡單的鍵盤節拍音樂採樣器

OKSampler 可以將 MP3 片段對應到鍵盤按鍵,並支援音訊循環播放。了解這款經典免費軟體的功能、其舊功能的缺失以及下載前需要檢查的事項。