Debian

在 GUI 中辨識的文件類型,但不是在命令行中

  • March 15, 2022

我最近意識到file在 Debian Bullseye 上無法辨識我正在處理的一些文件格式,告訴我它們只是 ZIP 文件:

user@host:~ $ file file.docx   # Correct, not a regular ZIP file
file.docx: Microsoft Word 2007+

user@host:~ $ file file.key    # Incorrect, also not a regular ZIP file
file.key: Zip archive data, at least v2.0 to extract

但是,如果我查看帶有 的文件pcmanfm,我會看到文件類型被正確辨識:

"file.docx" (50.5kB) Word 2007 document
"file.key" (10.4MB) Apple Keynote 5 presentation

是否可以告訴file使用與使用相同的魔術文件pcmanfm,或者以某種方式更新預設值/etc/magicfile了解流行的文件格式?

PCManFM 不使用相同類型的魔術文件file,它使用shared-mime-info。那知道Apple Keynote 5 文件;它通過它們的“PK”標記(所有 ZIP 文件通用)、該 ZIP 文件中是否存在index.apxl文件以及它們的.key副檔名來辨識它們。

file的目前魔法庫不知道 Apple Keynote 5 文件(它確實知道Microsoft Office XML 文件)。

要教授fileKeynote 文件,您可以使用共享 MIME 數據庫中的資訊添加自己的魔法條目;或者,您可以使用mimetype,它使用該資訊來提取文件的 MIME 類型。

我認為最好的選擇file.

引用自:https://unix.stackexchange.com/questions/694508