該詳細的指南說明了什麼是Exiftool ,如何在Linux上安裝Exiftool以及如何使用它使用實際示例來管理圖像元數據信息。
最後,我們將簡要了解兩種類型的元數據標準( EXIF和XMP)之間的區別。甚至還有一張Exiftool備忘單,可以幫助您記住命令!
目錄
菲爾·哈維(Phil Harvey)開發的Exiftool是一個強大的命令行應用程序和Perl庫,旨在以各種文件格式管理元數據。
使用Exiftool,我們可以管理嵌入在各種數字文件中的隱藏詳細信息(IE元數據)。這些細節可以包括:
Exiftool在不同平台(Linux,MacOS和Windows)上工作,有兩種口味:
如果您每天都在處理圖像,視頻,音頻文件或PDF,我可以保證Exiftool可能是您的最佳伴侶!
注意: EXIF代表更改後的法師格式。
Exiftool以其廣泛的功能而聞名,可滿足各種元數據管理需求:
Exiftool可以通過幾種方式安裝在Linux上。
Exiftool在流行Linux操作系統的默認存儲庫中可用。
對於Debian,Ubuntu和其他基於Debian的發行版,您可以使用APT軟件包管理器安裝Exiftool:
sudo apt更新 sudo apt安裝exiftool
這將安裝Exiftool及其依賴關係。
對於Fedora,您可以使用DNF軟件包管理器:
sudo dnf安裝perl-image-exiftool
如果您希望從源安裝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進行安裝
您也可以克隆Exiftool存儲庫並安裝它:
1。克隆存儲庫:
git克隆https://github.com/exiftool/exiftool.git
2。導航到克隆目錄:
CD Exiftool
3。運行Exiftool :
./ exiftool/path/to/image
這些方法應幫助您在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
在圖像文件中添加或修改元數據:
Exiftool -Artist =“您的名字” image.jpg
此命令將Artist標籤設置為Image.jpg中的“您的名字”。
例子:
將藝術家標籤設置/更改為ostechnix.png中的“ Senthil Kumar”:
讓我們通過閱讀文件的元數據來驗證作者的名稱是否確實更新了:
正如您在上面的輸出中看到的那樣,添加了藝術家名稱。
注意:編寫信息時,通過將“ _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標籤。
例子:
您可以使用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>遞歸重命名</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>處理重複的文件名</h3> <p>格式的%% -C一部分確保如果有重複的文件名,則將附加複制號以避免覆蓋文件。例如,如果兩個文件具有相同的日期和時間,則將命名為2024-07-13_12-23-21-1.jpg和2024-07-13_12-23-23-21-2.jpg。</p> <h3>重命名特定文件類型</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>提取縮略圖圖像</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的元數據並顯示任何警告或錯誤。
exiftool -a -g1 -s image.jpg> metadata.txt
此命令從image.jpg提取所有元數據,並將其保存到getadata.txt。
Exiftool -r -W .txt -common圖片
此命令遞歸從圖片目錄中的所有文件中提取常見的元數據,並將輸出寫入具有相同名稱的文本文件,但具有.txt擴展名。
這是您可以使用Exiftool從圖像中提取GPS坐標的方法。
exiftool -gpslatitude -gpslongitude image.jpg
此命令將顯示image.jpg的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 Image.jpg
提取特定的元數據標籤:
exiftool -t -tricedate -ofture -shutterspeed -iso image.jpg
將所有元數據提取到文本文件:
exiftool -a -g1 -s image.jpg> metadata.txt
從目錄中的所有文件中提取元數據:
Exiftool -r -W .txt -common圖片
添加或修改元數據標籤:
exiftool -tagname =“新值”文件名
批處理處理(對目錄中的所有文件修改元數據):
Exiftool -Artist =“ John Doe” *.jpg
遞歸批處理處理:
Exiftool -r -Artist =“ John Doe”/path/to/directory
將元數據從一個文件複製到另一個文件:
exiftool -tagsfromfile source.jpg target.jpg
將元數據從一個文件複製到多個文件:
exiftool -tagsfromfile source.jpg -ext jpg/path/to/directory
刪除所有元數據:
Exiftool -all = image.jpg
刪除特定的元數據標籤:
exiftool -tagname =文件名
根據所示日期重命名文件:
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> 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
基本提取:
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
查看可用標籤:
Exiftool -list
驗證元數據:
Exiftool -Validate -Warning -Error Image.jpg
提取縮略圖:
Exiftool -b -B -Thumbnailimage image.jpg> thumbnail.jpg
EXIF和XMP都是數字成像中使用的元數據標準,但它們具有不同的目的並且具有不同的特徵。
EXIF和XMP元數據對於數字成像的不同方面都很重要。 EXIF對於理解如何捕獲圖像的技術細節很有用,而XMP在整個編輯和發布過程中提供了一種更全面,更靈活的方法來管理和保存元數據。
現在,您了解所有有關Exiftool的信息! Exiftool是一個有力的工具,對於想要在數字文件中理解和管理元數據的任何人。這對於攝影師,攝像師以及任何想保持其數字文件井井有條的人可能特別有用。
資源:
相關閱讀:
以上是如何使用Linux中的Exiftool管理圖像元數據的詳細內容。更多資訊請關注PHP中文網其他相關文章!