应用实例:复制代码
- 一、通用指令参数
- -te <其他jpeg文件>
- 将其他jpeg文件的eixf导入目标jpeg。例如"jhead –te D:\My Pictures\B.jpg D:\My Pictures\A.jpg"
- -dc
- 删除jpeg信息中的备注。注意,jpeg文件有两个备注,一是和其他文件一样的备注,另一个是exif信息中的备注。jhead仅对exif信息有效。
- -de
- 完全删除exif信息。
- -du
- 删除非原始exif信息,例如Photoshop、Turbophoto之类编辑后修改exif留下的信息。
- -purejpg
- 删除所有jpeg文件非必须的信息。相当于-de、-dc和-du的集合,可以将文件减小数k。
- -ce
- 修改文件的jpeg文件头部分备注(此备注并非exif信息)。该指令会打开文本编辑器,并在编辑器关闭时将备注信息存入文件。
- -cs <文本文件>
- 导出备注。例如"jhead –cs D:\1.txt D:\My Pictures\A.jpg"
- -ci <文本文件>
- 导入备注。例如"jhead –ci D:\1.txt D:\My Pictures\A.jpg"
- -cl <备注文字>
- 直接输入备注。。例如"jhead –cl 我的备注 D:\My Pictures\A.jpg"
- 二、其他指令
- 时间日期
- -ft 将jpeg文件的“修改时间”修改为exif信息中记录的时间。
- -n[<格式-顺序>] 该指令会将文件名修改为exif信息中记录的“创建时间”;如果jpeg文件没有exif或者exif中的创建时间不可用,则将文件名修改为文件的“修改时间”。
- 默认的格式-顺序为MMDD-HHMMSS
- 格式-顺序参数如下:
- %d-日(01-31)
- %H-小时(00-23)
- %j-一年中的第几天(001-366)
- %m-月(01-12)
- %M-分钟(00-59)
- %S-秒(00-59)
- %U-一年中的第几周(00-53)
- %w-星期几(0-6,周日为0)
- %y-两位数纪年(00-99)
- %Y-四位数几年
- %i-添加数字序号
- 例如:
- jhead -n%Y%m%d-%H%M%S d:\*.jpg
- 将所有jpg文件修改为YYYYMMDD-HHMMSS.jpg的格式。
- -nf 与“-n”相同功能相同,不保留原文件名。
- -a 修改不同扩展名的同名文件名,相机拍摄的avi短片exif信息存储在与其同名的thm文件中,可用此指令给avi文件更名。一般与“-n”指令共同使用。
- -ta<时差> 修正时差,例如时差根据时区确定,例如+1:00或者-1:00
- -da<日期>-<日期> 修正日期。日期格式是yyyy:mm:dd、yyyy:nn:dd+hh:mm或者 yyyy:mm:dd+hh:mm:ss。根据前后参数时间差调整exif的时间。
- -ts<日期-时间> 直接修改exif中的拍摄时间,日期-时间格式为yyyy:mm:dd-hh:mm:ss
- 缩略图
- -dt 删除exif中的缩略图。这个缩略图一般为240x160像素,10k大小,用于数码相机、Windows XP查看照片,删除它不会影响工作。
- -st <文件名> 将exif中的缩略图复制为另一个jpeg文件
- -rt <文件名> 用另一个jpeg文件替换exif中的缩略图
- -rgt[大小] 刷新exif缩略图,其中大小为缩略图的最大边长。
- 旋转
- -autorot 根据exif中记录的水平方向信息转动jpeg照片。
- -norot 清除exif中的水平方向信息。
复制代码
- @echo off
- set SrcFolder=C:\test\BatHome
- set DstFolder=C:\test\Batcher
- for %%a in ("%SrcFolder%\*.jpg") do (
- jhead "%%a"|find "Resolution : 100 x 50">nul&&move "%%a" "%DstFolder%"
- )
复制代码
- @echo off
- ::获取照片的主要(部分)exif信息
- set "Filename=文件名 "
- set "Filesize=文件大小 "
- set "Filedate=文件日期 "
- set "Cameramake=相机制造商"
- set "Cameramodel=相机型号 "
- set "Date/Time=拍摄时间 "
- set "Resolution=宽度/高度 "
- set "Flashused=闪光灯使用"
- set "Focallength=焦距 "
- set "Exposuretime=曝光时间 "
- set "Aperture=光圈 "
- set "Whitebalance=白平衡 "
- set "MeteringMode=测光模式 "
- set "Exposure=曝光 "
- cd/d e:\Lc\111\tem p
- setlocal enabledelayedexpansion
- (for /f "tokens=1* delims=:" %%a in ('jhead *.jpg 2^>nul') do (
- set "str=%%a"&set "str=!str: =!"
- for %%i in (!str!) do if defined %%i (
- if "!%%i!"=="文件名 " (
- set /a n+=1
- if !n! neq 1 echo;
- )
- echo;!%%i! : %%b
- )
- ))
- echo;&echo 共 %n% 个jpg文件&echo;
- pause
1、找出指定大小(比如100 x 50)的图片,并把它们移到到指定文件夹。@echo off
set SrcFolder=C:\test\BatHome
set DstFolder=C:\test\Batcher
for %%a in ("%SrcFolder%\*.jpg") do (
jhead "%%a"|find "Res ...
Batcher 发表于 2009-6-14 18:04
g:\我的文档\桌面>jhead -c *.jpg "1-6537866-5693-t.jpg" 128x171 "2.jpg" 200x100 (bw) "87.jpg" 87x48 (bw) |
欢迎光临 批处理之家 (http://bbs.bathome.net/) | Powered by Discuz! 7.2 |