Exiftool 命令行操作图片元信息(Megadata)
Exiftool 是命令行操作exif最强大的工具。
参考:图片EXIF信息查看与Exiftool使用
参考:如何批量将图片文件名中的时间写入 EXIF 信息? 知乎
安装:
# Mac上安装 $ brew install exiftool # 或Linux上安装 $ sudo apt-get install exiftool # 查看图片全部exif信息 $ exiftool 图片位置 # 查看图片某个tag信息 $ exiftool -tag
语法
每种格式的图片都有自己不同的一堆Tags,比如时间、日期、地理位置等,jpg和png都很不一样。
所以到官网参考每种图片的不同tags,才能确定自己要怎么改这个信息。
注意,引用tag时,要用小写。
基本语法是一样的:
- 设置某tag的值:
-tag=VALUE
- 增减某tag值(如果是数字的话):
-tag+=VALUE
或-tag-=VALUE
- 清空:
-tag=
$ exiftool -artist=solomon
但是有一点一定要注意:每种tag所接受的值的格式是很严格的:
- 日期
- 时长
常用操作
$ exiftool photo.jpg #查看所有信息 $ exiftool -a -u -g1 photo.jpg #查看所有元信息,包括重复和未知标签,并按小组排列 $ exiftool -s -ImageSize -ExposureTime photo.jpg #查看图片尺寸 $ exiftool -common dir #查看dir目录文件信息(不仅仅是图片) $ exiftool -l c.jpg d.jpg #从两个图像文件打印所有信息。 $ exiftool -l -canon c.jpg d.jpg #从两个图像文件打印标准的佳能信息。
更改创建和修改时间:
$ exiftool -gps:all="" photo.jpg #有些相机会记录拍照时的GPS定位信息。如果你不希望别人看到使用该命令删除gps信息 $ exiftool -all="" photo.jpg #删除所有信息 $ exiftool -all="" --exif:all photo.jpg #删除EXIF以外的所有信息
写入标签:
$ exiftool -artist=标签名称 photo.jpg #写入艺术家标签 $ exiftool -artist=标签名称 a.jpg b.jpg c.jpg #写多个文件 $ exiftool -artist=标签名称 /exiftoolTest #写在一个目录的所有文件 exiftoolTest为文件夹
转移标签「<」(将某一个标签值赋予另一个标签):
# 将文件名(带日期的)设置到图片日期中(程序会自动识别日期格式) $ exiftool "-DateTimeOriginal<filename" "2009-09-30 15-28-16.jpg" # 将文件名设置为文件大小(带格式) $ exiftool "-filename<%f_$imagesize.%e" IMG_0894.JPG
其它:
$ exiftool -Comment='这是一个新的评论'dst.jpg 向JPG图片写入新评论(取代任何现有评论)。 $ exiftool -comment='' -o newdir -ext jpg 删除当前目录中所有JPG图像的评论, 将修改后的图像写入新目录。 $ exiftool -keywords=EXIF -keywords=编辑器 dst.jpg 用两个新的关键字(“EXIF”和。)替换现有的关键字列表 “编辑”)。 $ exiftool -Keywords+=单词 -o newfile.jpg src.jpg 将源图像复制到新文件,然后添加关键字(“单词”) 当前关键字列表。 $ exiftool -credit=xxx dir 从一个目录中的所有文件中删除信用信息,信用值是“xxx”。 $ exiftool -all='' dst.jpg 从图像中删除所有元信息。注意:你不应该 对RAW图像(DNG除外)进行处理,因为它是专有的RAW图像 格式通常包含制造注释中的信息 转换图像所必需的。 $ exiftool -all='' -comment ='寂寞' dst.jpg 删除图像中的所有元信息并添加评论 (注意顺序很重要:“-comment ='lonely'-all =” 也会删除新评论。) $ exiftool -all = --jfif:全部dst.jpg 从图像中删除除JFIF组以外的所有元信息。 $ exiftool -Photoshop:全部= dst.jpg 从图像中删除Photoshop元信息(注意 Photoshop信息还包括IPTC)。 $ exiftool -r -XMP-crss:all = DIR 递归删除a中的图像中的所有XMP-crss信息 目录。 $ exiftool'-ThumbnailImage <= thumb.jpg'dst.jpg 从指定的文件中设置缩略图(注意:引号是 以防止外壳重定向)。 $ exiftool'-JpgFromRaw <=%d%f_JFR.JPG'-ext NEF -r。 递归地写入以“_JFR.JPG”结尾的文件名的JPEG图像 添加到扩展名为“.NEF”的类似文件的JpgFromRaw标记中 当前目录。 (这是“-JpgFromRaw”的倒数 上面的“READING EXAMPLES”部分的命令)。 $ exiftool -DateTimeOriginal - ='0:0:0 1:30:0'dir 调整目录“dir”中所有图像的原始日期/时间 减去1小时30分钟。 (这相当于 “-DateTimeOriginal- = 1.5”。请参阅Image :: ExifTool :: Shift.pl 细节。) $ exiftool -createdate + = 3 -modifydate + = 3 a.jpg b.jpg 向两个CreateDate和ModifyDate时间戳添加3个小时 图片。 $ exiftool -AllDates + = 1:30 -if'$ make eq“Canon”'dir 移动DateTimeOriginal,CreateDate和ModifyDate的值 将所有佳能影像转换1小时30分钟 目录。 (AllDates标签作为这些的快捷方式提供 三个标签,允许他们通过一个标签访问。) $ exiftool -xmp:city = Kingston image1.jpg image2.nef 将标签写入两个图像的XMP组。 (没有“xmp:” 自从“City”存在以后,该标签将被写入IPTC组 在这两种情况下,IPTC默认是首选。) $ exiftool -LightSource - ='未知(0)'dst.tiff 只有在值为0时才删除“LightSource”标签。 $ exiftool -whitebalance- = auto -WhiteBalance = tung dst.jpg 只有之前为“自动”时,才将“WhiteBalance”设置为“Tungsten”。 $ exiftool -comment- = -comment ='新评论'a.jpg 只有当图片还没有时才写新评论。 $ exiftool -o%d%f.xmp目录 为“dir”中的所有图像创建XMP元信息数据文件。 $ exiftool -o test.xmp -owner = Phil -title ='XMP File' 仅从命令中定义的标签创建XMP数据文件 线。
常用标签名(Tags)
因为编辑exif信息需要知道图片里内置的各种标签名才能修改,所以下面为标签名参考。JPEG
Comment
: 描述,无字数限制。
PNG
Comment
: 描述,无字数限制。Description
:描述,无字数限制。
相关推荐
吹云 2020-11-05
84407805 2020-11-01
曾是土木人 2020-10-31
87201442 2020-10-15
java0 2020-09-29
81437716 2020-09-18
81437716 2020-09-13
bluecarrot 2020-09-11
myCat 2020-09-09
83427718 2020-09-07
85560694 2020-09-03
89520991 2020-08-21
89550191 2020-08-09
katie000 2020-08-04
hunningtu 2020-07-30
89961330 2020-07-28
yuzhongdelei0 2020-07-28
yuzhongdelei0 2020-07-27