搜尋
首頁系統教程Linux如何使用Linux中的Exiftool管理圖像元數據

該詳細的指南說明了什麼是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
Linux和Windows之間虛擬化支持有哪些差異?Linux和Windows之間虛擬化支持有哪些差異?Apr 22, 2025 pm 06:09 PM

Linux和Windows在虛擬化支持上的主要區別在於:1)Linux提供KVM和Xen,性能和靈活性突出,適合高定制環境;2)Windows通過Hyper-V支持虛擬化,界面友好,與Microsoft生態系統緊密集成,適合依賴Microsoft軟件的企業。

Linux系統管理員的主要任務是什麼?Linux系統管理員的主要任務是什麼?Apr 19, 2025 am 12:23 AM

Linux系統管理員的主要任務包括系統監控與性能調優、用戶管理、軟件包管理、安全管理與備份、故障排查與解決、性能優化與最佳實踐。 1.使用top、htop等工具監控系統性能,並進行調優。 2.通過useradd等命令管理用戶賬戶和權限。 3.利用apt、yum管理軟件包,確保系統更新和安全。 4.配置防火牆、監控日誌、進行數據備份以確保系統安全。 5.通過日誌分析和工具使用進行故障排查和解決。 6.優化內核參數和應用配置,遵循最佳實踐提升系統性能和穩定性。

很難學習Linux嗎?很難學習Linux嗎?Apr 18, 2025 am 12:23 AM

學習Linux並不難。 1.Linux是一個開源操作系統,基於Unix,廣泛應用於服務器、嵌入式系統和個人電腦。 2.理解文件系統和權限管理是關鍵,文件系統是層次化的,權限包括讀、寫和執行。 3.包管理系統如apt和dnf使得軟件管理方便。 4.進程管理通過ps和top命令實現。 5.從基本命令如mkdir、cd、touch和nano開始學習,再嘗試高級用法如shell腳本和文本處理。 6.常見錯誤如權限問題可以通過sudo和chmod解決。 7.性能優化建議包括使用htop監控資源、清理不必要文件和使用sy

Linux管理員的薪水是多少?Linux管理員的薪水是多少?Apr 17, 2025 am 12:24 AM

Linux管理員的平均年薪在美國為75,000至95,000美元,歐洲為40,000至60,000歐元。提升薪資可以通過:1.持續學習新技術,如雲計算和容器技術;2.積累項目經驗並建立Portfolio;3.建立職業網絡,拓展人脈。

Linux的主要目的是什麼?Linux的主要目的是什麼?Apr 16, 2025 am 12:19 AM

Linux的主要用途包括:1.服務器操作系統,2.嵌入式系統,3.桌面操作系統,4.開發和測試環境。 Linux在這些領域表現出色,提供了穩定性、安全性和高效的開發工具。

互聯網在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等命令了解系統運行狀態和資源使用情況。

使用Linux別名提高自定義命令快捷方式的生產率使用Linux別名提高自定義命令快捷方式的生產率Apr 12, 2025 am 11:43 AM

介紹 Linux是一個強大的操作系統,由於其靈活性和效率,開發人員,系統管理員和電源用戶都喜歡。但是,經常使用長而復雜的命令可能是乏味的

See all articles

熱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

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強大的PHP整合開發環境

mPDF

mPDF

mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)

PhpStorm Mac 版本

PhpStorm Mac 版本

最新(2018.2.1 )專業的PHP整合開發工具

Dreamweaver CS6

Dreamweaver CS6

視覺化網頁開發工具