如何將 OSX/Finder 標籤作為元資料寫入 PDF?

如何將 OSX/Finder 標籤作為元資料寫入 PDF?

我已經為我的所有 PDF 文件添加了標籤,但問題是,這些類型的標籤僅受 OSX (Mavericks) 支持,這意味著如果我想在 Windows 或 Linux 機器上使用 PDF,它們就會消失。

我正在尋找解決方案自動地將我的所有標籤作為關鍵字元資料寫入 PDF。

答案1

這是一個開始:標籤是一個在 Mavericks 中操作標籤的命令列工具。 Exif工具是將元資料寫入影像的命令列工具。因此,您需要執行類似的操作,將它們在命令列函數中粘合在一起:

function tags2metadata(){ 
   tags=$(tag -N "$1");                
   exiftool -Keywords="${tags//,/, }" "$1";
   tag --add "$tags" "$1";
}

tags=$(tag -N "$1");將標籤收集為逗號分隔清單(-N 選項是為了避免在輸出中顯示檔案名稱),例如good,bad,ugly

exiftool -Keywords="${tags//,/, }" "$1";將標籤新增至“關鍵字”pdf 元資料中的元資料欄位(表達式${tags//,/, } 取代每個逗號都$tags用逗號+空格組成,這樣它們就成為單獨的關鍵字)。

現在 exiftool 使用原始檔案的名稱建立一個新檔案並重新命名原始檔案;例如。 foo.pdf 重新命名為 foo.pdf_original,並使用修改後的元資料建立新檔案 foo.pdf。您可以透過新增至-overwrite_originalexiftool 命令來變更此設置,如下所示:

exiftool -overwrite_original -Keywords="${tags//,/, }" "$1";

tag --add "$tags" "$1";但我選擇使用(函數中的 $1 代表給定的輸入)將 Mavericks Finder 標籤重寫到新檔案。

因此,要使用它,您可以打開一個終端,在cd包含 pdf 的目錄中輸入上面的腳本,然後執行以下操作:

for i in *.pdf
   do tags2metadata "$i"
done

如果您開啟新檔案並檢查關鍵字,您應該會在其中找到所有 Finder 標籤。

我建議安裝標籤和 exiftool自製。一旦你安裝了它,你只需要輸入brew install exiftool tag,它就會為你發揮必要的魔力。

在你釋放你的好東西之前,在你不介意搞砸的文件上進行測試。

相關內容