如何使用ExifTool提取文件的元数据

译文
开源
ExifTool是一个免费开源软件程序,用于读取、写入和更新PDF、音频、视频和图像等各种文件的元数据。它与平台无关,可作为perl库和命令行应用程序来使用。元数据是指关于数据的信息,比如文件大小、创建日期和文件类型等。本文将讨论使用ExifTool的不同方法。

【51CTO.com快译】ExifTool是一个免费开源软件程序,用于读取、写入和更新PDF、音频、视频和图像等各种文件的元数据。它与平台无关,可作为perl库和命令行应用程序来使用。元数据是指关于数据的信息,比如文件大小、创建日期和文件类型等。ExifTool非常易于使用,并提供了有关数据的许多信息。本文将讨论使用ExifTool的不同方法。

安装ExifTool

在Linux机器上安装ExifTool很容易。在终端中输入以下命令即可安装它: 

  1. ubuntu@ubuntu:~$ sudo apt-get install libimage-exiftool-perl 

现在ExifTool已安装在机器中,随时可以使用。

提取文件的完整元数据

我们可以在终端中使用以下命令来获取文件的完整元数据:

  1. ubuntu@ubuntu:~$ exiftool 

我们输入上述命令后,可获得有关文件的所有信息,如下所示:

图1

它为我们提供了有关该文件的大量信息。在上图中,未显示所有详细信息。你可以通过向下滚动终端窗口来查看更多详细信息。

我们可以结合使用ExifTool和一些选项来提取文件的特定数据。想查看所有可用选项,请在终端中输入以下命令: 

  1. ubuntu@ubuntu:~$ man exiftool 

它会打开ExifTool的手册页,如下所示,我们可以在此手册页中看到所有可用选项。其中一些选项在此处讨论。

图2

提取常见元数据

我们可以使用选项和Exiftool命令一起提取文件的最常见元数据。在终端中输入以下命令,以显示文件的常见元数据:

  1. ubuntu@ubuntu:~$ exiftool -common 

它将为我们提供文件的一般信息,如下图所示:

图3

提取图像位置

现代智能手机和数码相机在每张照片中保存了捕获图像所在位置的GPS坐标。我们可以通过在终端中执行以下命令来提取图像的GPS坐标。

  1. ubuntu@ubuntu:~$ exiftool | grep GPS 

它将为我们提供捕获图像所在位置的GPS坐标。

图4

提取特定元数据

我们还可以通过使用不同的选项来提取文件的特定元数据。你可以在手册页中查看所有选项。输入以下命令以查看特定元数据。

  1. ubunut@ubuntu:~$ exiftool - 

它将为我们提供<option>字段指定的特定信息。我们还可以使用多个选项,如下图所示:

5

创建缩略图图像

缩略图图像是指原始图像的预览,其大小比原始图像要小。它描述了原始图像的外观,可快速打开。

我们可以通过在终端中输入以下命令来创建缩略图图像。

  1. ubuntu@ubuntu:~$ exiftool -ThumbnailImage > thumb.jpg 

这会将原始图像的缩略图另存为“thumb.jpg”,该缩略图与原始图像相比较小。

图6

我们可以看到缩略图已创建,缩略图的大小仅为86字节,而原始图像的大小为3.8 MB。

使用关键字提取元数据

我们还可以使用关键字提取所需的元数据。比如说,如果想使用ExifTool显示图像宽度,可使用width关键字进行搜索。下面是将关键字与ExifTool结合使用的语法。

  1. ubuntu@ubuntu:~$ exiftool -”*width*” 

我们输入上述命令后,它将为我们提供与宽度有关的所有标签,如下图所示:

图7

我们可以看到,与“width”关键字有关的所有标签均已显示。这样,我们可以使用任何关键字来搜索相关标签。

ExifTool的详细模式

与普通模式相比,ExifTool的详细模式为我们提供了文件的更多详细信息。通过将<-v>选项与ExifTool结合使用,可以进入详细模式。详细模式的语法如下:

  1. ubuntu@ubuntu:~$ exiftool -v 

在详细模式下,ExifTool将为我们提供有关文件的更多信息,如下图所示:

图8

更新文件的元数据

ExifTool为我们提供了更新文件元数据的功能,但是这项功能受到限制,因此我们无法更新元数据的所有标签。我们可以更新一些标签。以下是更新文件元数据的语法:

  1. ubuntu@ubuntu:~$ exiftool -=”New_tag” 

这会将改为“New_tag”, 如下图所示:

图9

从上图可以看到“F Number”标签已从4.0更新到6.0,并创建了带有“_original”后缀的新图像。“image.jpg_original”中的“F Number”标签仍然是4.0。

一些无法更新,比如“Light Value”。我们尝试更新该时,它不会更改,并给出警告消息,如下图所示:

图10

在上图中,既没有更新,也没有创建带有“_original”后缀的新图像。

删除文件元数据

到目前为止,我们已更新了元数据,并提取了文件的元数据。我们还可以使用ExifTool删除文件的元数据。可以通过在终端中输入以下命令来删除文件的元数据:

  1. ubuntu@ubuntu:~$ exiftool -all

我们在终端中输入上述命令后,只有一些元数据被删除。下图清楚地解释了这一点:

图11

我们输入上述命令后,原始图像将恢复,并创建附有已更改元数据的新图像。我们可以看到图像的元数据精简了。

提取PDF文件的元数据

ExifTool不仅用于图像,还可以用于提取PDF和视频文件的元数据。提供PDF和视频文件元数据的语法与提取图像元数据的语法一样。下图显示了PDF文件的元数据:

图12

结论

ExifTool是一种用于提取文件元数据的强大工具。它不仅适用于图像,还适用于其他格式的文件,比如PDF和mp4等。它使我们能够更新和删除文件的元数据,并提供有关文件的许多信息。

原文标题:Extracting Metadata of a File using ExifTool,作者:Usama Azad

【51CTO译稿,合作站点转载请注明原文译者和出处为51CTO.com】

 

责任编辑:庞桂玉 来源: 51CTO
相关推荐

2021-10-21 05:41:27

QueenSono安全工具提取数据

2021-10-19 16:10:46

Power BI数据分析工具

2020-07-08 07:54:03

PythonPDF数据

2021-09-01 10:37:25

鸿蒙HarmonyOS应用

2018-08-17 09:27:17

Photon数据爬虫

2023-12-19 22:44:45

PythonPDFExcel

2023-08-07 09:00:00

2023-04-14 15:50:29

元数据数据治理

2020-07-08 15:43:26

数据机器学习提取

2022-08-01 14:15:17

大数据元宇宙

2023-09-27 08:51:52

PythonOCR技术

2009-12-22 16:14:01

WCF服务元数据

2021-10-26 09:02:26

Excel技巧openpyxl

2009-09-21 09:40:12

Java元数据Java注释

2022-06-16 08:00:00

元数据数据中心数据架构

2011-04-08 09:42:19

Access数据库压缩文件

2009-07-29 17:39:57

ibmdwDB2

2020-07-13 07:30:12

Linux提取文件脚本

2017-03-21 10:55:22

大数据

2019-09-29 09:08:41

Python数据库Google
点赞
收藏

51CTO技术栈公众号