目录
什么是Exiftool?
Exiftool的主要特征
在Linux中安装Exiftool
在Debian/Ubuntu安装Exiftool
在Fedora中安装Exiftool
使用git安装Exiftool
如何使用Exiftool来管理Linux中的图像元数据
1。阅读元数据
2。写元数据
3。复制元数据
删除特定的元数据标签
删除所有元数据
批处理处理
递归批处理处理
查看可用标签
提取特定的元数据标签
基于元数据重命名文件
递归重命名
处理重复的文件名
重命名特定文件类型
10。提取缩略图图像
地理图像
批处理
9。验证元数据
将所有元数据提取到文本文件
从目录中的所有文件中提取元数据
使用Exiftool提取GPS坐标
基本提取
提取所有GPS数据
输出到文本文件
批次提取
小数度输出
Exiftool命令作弊表
4。去除元数据
5。重命名文件
6。地理标记
7。提取GPS坐标
8。列表可用标签
EXIF和XMP元数据之间的差异
Exif元数据
XMP元数据
关键差异
结论
首页 系统教程 操作系统 如何使用Linux中的Exiftool管理图像元数据

如何使用Linux中的Exiftool管理图像元数据

Mar 15, 2025 am 09:45 AM

该详细的指南说明了什么是Exiftool ,如何在Linux上安装Exiftool以及如何使用它使用实际示例来管理图像元数据信息。

最后,我们将简要了解两种类型的元数据标准( EXIFXMP)之间的区别。甚至还有一张Exiftool备忘单,可以帮助您记住命令!

目录

什么是Exiftool?

菲尔·哈维(Phil Harvey)开发的Exiftool是一个强大的命令行应用程序和Perl库,旨在以各种文件格式管理元数据

使用Exiftool,我们可以管理嵌入在各种数字文件中的隐藏详细信息(IE元数据)。这些细节可以包括:

  • 拍摄照片的日期和时间,
  • 使用的相机设置,
  • 位置信息(GPS坐标),
  • 作者信息,
  • 对文件进行的编辑,
  • 还有很多。

Exiftool在不同平台(Linux,MacOS和Windows)上工作,有两种口味:

  • PERL库:这使程序员可以在其应用程序中集成Exiftool功能。
  • 命令行应用程序:这是一个基于文本的工具,供用户直接与Exiftool交互。

如果您每天都在处理图像,视频,音频文件或PDF,我可以保证Exiftool可能是您的最佳伴侣!

注意EXIF代表更改法师格式。

Exiftool的主要特征

Exiftool以其广泛的功能而闻名,可满足各种元数据管理需求:

  • 支持多种元数据格式: Exiftool可以处理许多元数据格式,例如EXIF,GPS,IPTC,XMP,JFIF,JFIF,GEOTIFF,ICC配置文件,Photoshop IRB,FlashPix,AFCP,AFCP,ID3等。
  • 宽文件格式兼容性:它可以与许多文件类型一起使用,包括JPEG,PNG,TIFF,RAW,MP4,MOV和AVI。
  • 独立于平台的: Exiftool可用于Windows,MacOS和基于UNIX的系统。
  • 可自定义的输出:它提供多个输出格式化选项,包括选项卡 - 删除,HTML,XML和JSON。
  • 多语言支持: Exiftool提供各种语言的输出,包括英语,法语,德语,日语等。

在Linux中安装Exiftool

Exiftool可以通过几种方式安装在Linux上。

在Debian/Ubuntu安装Exiftool

Exiftool在流行Linux操作系统的默认存储库中可用。

对于Debian,Ubuntu和其他基于Debian的发行版,您可以使用APT软件包管理器安装Exiftool:

 sudo apt更新
sudo apt安装exiftool
登录后复制

这将安装Exiftool及其依赖关系。

在Fedora中安装Exiftool

对于Fedora,您可以使用DNF软件包管理器:

 sudo dnf安装perl-image-exiftool
登录后复制

安装exiftool f rom源

如果您希望从源安装Exiftool,请按照以下步骤:

1。下载最新版本

在撰写本指南时,Exiftool的最新版本为12.89 。让我们使用命令下载它:

 WGET https://exiftool.org/image-exiftool-12.89.tar.gz
登录后复制

2。提取下载的文件

 tar xvf image-exiftool-12.89.tar.gz
登录后复制

3。导航到提取的目录

 CD Image-Exiftool-122.89
登录后复制

4。安装Exiftool

确保已安装了开发工具。然后运行以下命令一个:

 perl makefile.pl
制作
进行测试
Sudo进行安装
登录后复制

使用git安装Exiftool

您也可以克隆Exiftool存储库并安装它:

1。克隆存储库

 git克隆https://github.com/exiftool/exiftool.git
登录后复制

2。导航到克隆目录

 CD Exiftool
登录后复制

3。运行Exiftool

 ./ exiftool/path/to/image
登录后复制

这些方法应帮助您在Linux系统上启动并运行。

如何使用Exiftool来管理Linux中的图像元数据

以下是一些基本命令,以说明如何使用Exiftool:

阅读元数据

从图像文件读取元数据:

 Exiftool Image.jpg
登录后复制
登录后复制

此命令显示与image.jpg关联的所有元数据。

例子

我将显示名为ostechnix.png的图像文件的元数据。

 Exiftool ostechnix.png
登录后复制

样本输出

 Exiftool版本编号:12.16
文件名:ostechnix.png
目录:。
文件大小:6.4 KIB
文件修改日期/时间:2020:08:22 15:21:00 05:30
文件访问日期/时间:2024:07:22 17:52:28 05:30
文件Inode更改日期/时间:2024:07:11 13:44:03 05:30
文件权限:rwxrwxrwx
文件类型:PNG
文件类型扩展名:PNG
MIME类型:图像/PNG
图像宽度:267
图像高度:267
位深度:8
颜色类型:带alpha的RGB
压缩:放气/膨胀
过滤器:自适应
交叉:不隔离
单元x的像素:11811
单位y的像素:11811
像素单元:仪表
图像尺寸:267x267
百万像素:0.071
登录后复制

如何使用Linux中的Exiftool管理图像元数据

写元数据

在图像文件中添加或修改元数据:

 Exiftool -Artist =“您的名字” image.jpg
登录后复制

此命令将Artist标签设置为Image.jpg中的“您的名字”。

例子

将艺术家标签设置/更改为ostechnix.png中的“ Senthil Kumar”:

如何使用Linux中的Exiftool管理图像元数据

让我们通过阅读文件的元数据来验证作者的名称是否确实更新了:

如何使用Linux中的Exiftool管理图像元数据

正如您在上面的输出中看到的那样,添加了艺术家名称。

注意:编写信息时,通过将“ _original”添加到文件名中来保存原始文件。您必须保留原件的副本,或在擦除原件之前彻底验证新文件。

复制元数据

将元数据从一个文件复制到另一个文件:

 exiftool -tagsfromfile source.jpg target.jpg
登录后复制
登录后复制

此命令将所有元数据标签从source.jpg复制到target.jpg。

删除特定的元数据标签

删除特定标签:

 exiftool -tagname =文件名
登录后复制
登录后复制

例如,从image.jpg中删除艺术家标签:

 Exiftool -Artist = Image.jpg
登录后复制

删除所有元数据

要从文件中删除所有元数据:

 Exiftool -all = image.jpg
登录后复制
登录后复制

此命令从image.jpg中删除所有元数据。

批处理处理

批处理处理使您可以同时将元数据更改应用于多个文件。

一次编辑元数据,以一次为多个文件:

 Exiftool -Artist =“ John Doe” *.jpg
登录后复制
登录后复制

此命令为目录中的所有JPEG文件设置Artist标签。

递归批处理处理

要处理子目录中的文件,请使用-r选项:

 Exiftool -r -Artist =“ John Doe”/path/to/directory
登录后复制
登录后复制

此命令为/path/to/to/Directory及其子目录中的所有JPEG文件设置Artist标签。

查看可用标签

查看所有可以编辑的标签的列表:

 Exiftool -list
登录后复制
登录后复制

此命令列出了Exiftool可以读写的所有标签。

提取特定的元数据标签

exiftool -t -tricedate -ofture -shutterspeed -iso image.jpg
登录后复制

此命令从image.jpg提取创建的,孔径,shutterspeed和ISO标签。

例子

如何使用Linux中的Exiftool管理图像元数据

基于元数据重命名文件

您可以使用Exiftool使用简单命令来重命名文件的“ tate Date”元数据:

 exiftool -d“%y-%m-%d_%h-%m-%s %%  -  c。%% e”  -  fileName <datetimeriginal image.jpg><p>此命令使用格式yyyy-mm-dd_hh-mm-ss基于其dateTimeOriginal元数据重命名image.jpg。</p>
<h3 id="递归重命名">递归重命名</h3>
<p>如果要根据元数据递归重命名特定目录中的所有文件,则可以使用-r标志如下:</p>
<pre class="brush:php;toolbar:false"> exiftool -r -d“%y-%m-%d_%h-%m-%s %%  -  c。%% e”  -  fileName <datetimeriginal><p>此命令将递归重命名指定目录及其子目录中的所有文件。</p>
<h3 id="处理重复的文件名">处理重复的文件名</h3>
<p>格式的%% -C一部分确保如果有重复的文件名,则将附加复制号以避免覆盖文件。例如,如果两个文件具有相同的日期和时间,则将命名为2024-07-13_12-23-21-1.jpg和2024-07-13_12-23-23-21-2.jpg。</p>
<h3 id="重命名特定文件类型">重命名特定文件类型</h3>
<p>要重命名特定文件类型,例如JPEG文件,您可以使用-ext选项:</p>
<pre class="brush:php;toolbar:false"> Exiftool -r -R-ext Jpg -d“%y-%m-%d_%h-%m-%s %%  -  c。%% e”  -  filename <datetimeriginal><p>此命令将仅在指定目录及其子目录中重命名JPEG文件。</p>
<h3 id="提取缩略图图像">提取缩略图图像</h3>
<pre class="brush:php;toolbar:false">Exiftool -b -B -Thumbnailimage image.jpg> thumbnail.jpg
登录后复制

此命令从image.jpg提取缩略图图像,并将其保存为thumbnail.jpg。

地理图像

exiftool -geotag track.log image.jpg
登录后复制

此命令geotags image.jpg使用track.log的GPS数据。

批处理

如果您有带有GPS数据的CSV文件,则可以批处理图像图:

 exiftool -geotag gps_data.csv/path/to/fimage
登录后复制
登录后复制

此命令使用来自gps_data.csv的GPS数据中的/路径/到/图像中的所有图像。

验证元数据

Exiftool -Validate -Warning -Error Image.jpg
登录后复制

此命令验证了image.jpg的元数据并显示任何警告或错误。

如何使用Linux中的Exiftool管理图像元数据

将所有元数据提取到文本文件

exiftool -a -g1 -s image.jpg> metadata.txt
登录后复制

此命令从image.jpg提取所有元数据,并将其保存到getadata.txt。

从目录中的所有文件中提取元数据

Exiftool -r -W .txt -common图片
登录后复制

此命令递归从图片目录中的所有文件中提取常见的元数据,并将输出写入具有相同名称的文本文件,但具有.txt扩展名。

使用Exiftool提取GPS坐标

这是您可以使用Exiftool从图像中提取GPS坐标的方法。

基本提取

exiftool -gpslatitude -gpslongitude image.jpg
登录后复制

此命令将显示image.jpg的GPS纬度和经度。

如何使用Linux中的Exiftool管理图像元数据

提取所有GPS数据

Exiftool -GPS* image.jpg
登录后复制

此命令从Image.jpg提取所有与GPS相关的元数据。

样本输出

 GPS Latitude Ref : NorthGPS Longitude Ref : EastGPS Altitude Ref : Above Sea LevelGPS Time Stamp : 13:37:16GPS Date Stamp : 2023:05:18GPS Altitude : 93.9 m Above Sea LevelGPS Date/Time : 2023:05:18 13:37:16ZGPS Latitude : 52 deg 40' 11.85" NGPS Longitude : 13 deg 16' 51.10" EGPS Position : 52 deg 40'11.85“ n,13 deg 16'51.10” e
登录后复制

输出到文本文件

将GPS坐标保存到文本文件:

 exiftool -gpslatitude -gpslongitude -t image.jpg> gps_coordinates.txt
登录后复制
登录后复制

此命令将image.jpg的gps纬度和经度写入gps_coordinates.txt。

批次提取

从目录中的所有图像中提取GPS坐标并将其保存到文本文件中:

 exiftool -fileName -gpslatitude -gpslongitude -t/path/to/Directory> gps_coordinates.txt
登录后复制
登录后复制

此命令将使用指定目录中所有图像的文件名和GPS坐标创建一个选项卡 - 删除的文件gps_coordinates.txt。

小数度输出

如果您希望以十进制程度为单位的坐标,请添加-n选项:

 exiftool -gpslatitude -gpslongitude -n image.jpg
登录后复制
登录后复制

样本输出

 GPS纬度:52.6699589722222GPS经度:13.280862
登录后复制

该命令以小数度输出GPS坐标。

Exiftool命令作弊表

1。阅读元数据

基本阅读:

 Exiftool Image.jpg
登录后复制
登录后复制

提取特定的元数据标签:

 exiftool -t -tricedate -ofture -shutterspeed -iso image.jpg
登录后复制

将所有元数据提取到文本文件:

 exiftool -a -g1 -s image.jpg> metadata.txt
登录后复制

从目录中的所有文件中提取元数据:

 Exiftool -r -W .txt -common图片
登录后复制

2。写元数据

添加或修改元数据标签:

 exiftool -tagname =“新值”文件名
登录后复制

批处理处理(对目录中的所有文件修改元数据):

 Exiftool -Artist =“ John Doe” *.jpg
登录后复制
登录后复制

递归批处理处理:

 Exiftool -r -Artist =“ John Doe”/path/to/directory
登录后复制
登录后复制

3。复制元数据

将元数据从一个文件复制到另一个文件:

 exiftool -tagsfromfile source.jpg target.jpg
登录后复制
登录后复制

将元数据从一个文件复制到多个文件:

 exiftool -tagsfromfile source.jpg -ext jpg/path/to/directory
登录后复制

4。去除元数据

删除所有元数据:

 Exiftool -all = image.jpg
登录后复制
登录后复制

删除特定的元数据标签:

 exiftool -tagname =文件名
登录后复制
登录后复制

5。重命名文件

根据所示日期重命名文件:

 Exiftool -d“%y-%m-%d_%h-%m-%s %%  -  c。%% e”  -  fileName <datetimeriginal><p><strong>递归重命名:</strong></p>
<pre class="brush:php;toolbar:false"> exiftool -r -d“%y-%m-%d_%h-%m-%s %%  -  c。%% e”  -  filename <datetimeriginal><p><strong>重命名特定文件类型:</strong></p>
<pre class="brush:php;toolbar:false"> Exiftool -r -R-ext Jpg -d“%y-%m-%d_%h-%m-%s %%  -  c。%% e”  -  filename <datetimeriginal><h3 id="地理标记"> 6。地理标记</h3>
<p><strong>基本地理标记:</strong></p>
<pre class="brush:php;toolbar:false"> exiftool -geotag track.log image.jpg
登录后复制

批处理:

 exiftool -geotag gps_data.csv/path/to/fimage
登录后复制
登录后复制

7。提取GPS坐标

基本提取:

 exiftool -gpslatitude -gpslongitude image.jpg
登录后复制

提取所有GPS数据:

 Exiftool -GPS* image.jpg
登录后复制

输出到文本文件:

 exiftool -gpslatitude -gpslongitude -t image.jpg> gps_coordinates.txt
登录后复制
登录后复制

批次提取:

 exiftool -fileName -gpslatitude -gpslongitude -t/path/to/Directory> gps_coordinates.txt
登录后复制
登录后复制

小数点的输出:

 exiftool -gpslatitude -gpslongitude -n image.jpg
登录后复制
登录后复制

8。列表可用标签

查看可用标签:

 Exiftool -list
登录后复制
登录后复制

9。验证元数据

验证元数据:

 Exiftool -Validate -Warning -Error Image.jpg
登录后复制

10。提取缩略图图像

提取缩略图:

 Exiftool -b -B -Thumbnailimage image.jpg> thumbnail.jpg
登录后复制

EXIF和XMP元数据之间的差异

EXIFXMP都是数字成像中使用的元数据标准,但它们具有不同的目的并且具有不同的特征。

Exif元数据

  • 来源:由日本电子工业发展协会(JEIDA)开发,用于数码相机。
  • 内容:主要包含有关图像的技术信息,例如相机设置(光圈,快门速度,ISO),拍摄照片的日期和时间,有时甚至是GPS坐标。
  • 格式:二进制格式直接嵌入图像文件(JPEG,TIFF等)。
  • 用法:由数码相机和图像查看/编辑软件得到广泛支持。它主要用于存储与摄像机相关的信息。

XMP元数据

  • 来源:由Adobe Systems开发为元数据的开放标准。
  • 内容:可以存储广泛的信息,包括技术,描述性和行政元数据。这包括编辑历史记录,关键字,作者信息等。
  • 格式:基于XML的格式,使其更加灵活和扩展。 XMP元数据可以嵌入到文件中,也可以存储在单独的边防文件中。
  • 用法:在专业照片编辑软件(如Adobe Photoshop和Lightroom)中广泛使用,用于管理和保存不同的文件格式和工作流程的元数据。

关键差异

  • 目的: EXIF主要用于特定于摄像机的信息,而XMP更广泛,可以存储更广泛的元数据。
  • 格式: EXIF是二进制的,并嵌入在图像文件中,而XMP基于XML,可以分别嵌入或存储。
  • 灵活性: XMP更加灵活,可以轻松扩展到包括自定义元数据字段,而EXIF则更加刚性和标准化。

EXIF和XMP元数据对于数字成像的不同方面都很重要。 EXIF对于理解如何捕获图像的技术细节很有用,而XMP在整个编辑和发布过程中提供了一种更全面,更灵活的方法来管理和保存元数据。

结论

现在,您了解所有有关Exiftool的信息! Exiftool是一个有力的工具,对于想要在数字文件中理解和管理元数据的任何人。这对于摄影师,摄像师以及任何想保持其数字文件井井有条的人可能特别有用。

资源

  • Exiftool网站

相关阅读

  • 如何在Linux上查看图像元数据

以上是如何使用Linux中的Exiftool管理图像元数据的详细内容。更多信息请关注PHP中文网其他相关文章!

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover

AI Clothes Remover

用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool

Undress AI Tool

免费脱衣服图片

Clothoff.io

Clothoff.io

AI脱衣机

Video Face Swap

Video Face Swap

使用我们完全免费的人工智能换脸工具轻松在任何视频中换脸!

热工具

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

Linux最好使用的是什么? Linux最好使用的是什么? Apr 03, 2025 am 12:11 AM

Linux最适合用作服务器管理、嵌入式系统和桌面环境。1)在服务器管理中,Linux用于托管网站、数据库和应用程序,提供稳定性和可靠性。2)在嵌入式系统中,Linux因其灵活性和稳定性被广泛应用于智能家居和汽车电子系统。3)在桌面环境中,Linux提供了丰富的应用和高效的性能。

Linux的5个基本组件是什么? Linux的5个基本组件是什么? Apr 06, 2025 am 12:05 AM

Linux的五个基本组件是:1.内核,管理硬件资源;2.系统库,提供函数和服务;3.Shell,用户与系统交互的接口;4.文件系统,存储和组织数据;5.应用程序,利用系统资源实现功能。

Linux最有用的是什么? Linux最有用的是什么? Apr 09, 2025 am 12:02 AM

Linux在服务器、嵌入式系统和桌面环境中的应用广泛。1)在服务器领域,Linux因其稳定性和安全性成为托管网站、数据库和应用的理想选择。2)在嵌入式系统中,Linux因其高度定制性和高效性而受欢迎。3)在桌面环境中,Linux提供了多种桌面环境,满足不同用户需求。

如何学习Linux基础知识? 如何学习Linux基础知识? Apr 10, 2025 am 09:32 AM

Linux基础学习从零开始的方法包括:1.了解文件系统和命令行界面,2.掌握基本命令如ls、cd、mkdir,3.学习文件操作,如创建和编辑文件,4.探索高级用法如管道和grep命令,5.掌握调试技巧和性能优化,6.通过实践和探索不断提升技能。

什么是Linux设备? 什么是Linux设备? Apr 05, 2025 am 12:04 AM

Linux设备是运行Linux操作系统的硬件设备,包括服务器、个人电脑、智能手机和嵌入式系统。它们利用Linux的强大功能执行各种任务,如网站托管和大数据分析。

Linux的缺点是什么? Linux的缺点是什么? Apr 08, 2025 am 12:01 AM

Linux的缺点包括用户体验、软件兼容性、硬件支持和学习曲线。1.用户体验不如Windows或macOS友好,依赖命令行界面。2.软件兼容性不如其他系统,缺乏许多商业软件的原生版本。3.硬件支持不如Windows全面,可能需要手动编译驱动程序。4.学习曲线较陡峭,掌握命令行操作需要时间和耐心。

互联网在Linux上运行吗? 互联网在Linux上运行吗? Apr 14, 2025 am 12:03 AM

互联网运行不依赖单一操作系统,但Linux在其中扮演重要角色。Linux广泛应用于服务器和网络设备,因其稳定性、安全性和可扩展性受欢迎。

Linux操作是什么? Linux操作是什么? Apr 13, 2025 am 12:20 AM

Linux操作系统的核心是其命令行界面,通过命令行可以执行各种操作。1.文件和目录操作使用ls、cd、mkdir、rm等命令管理文件和目录。2.用户和权限管理通过useradd、passwd、chmod等命令确保系统安全和资源分配。3.进程管理使用ps、kill等命令监控和控制系统进程。4.网络操作包括ping、ifconfig、ssh等命令配置和管理网络连接。5.系统监控和维护通过top、df、du等命令了解系统运行状态和资源使用情况。

See all articles