2017-01-02 4 views
1

날짜 형식으로 이름이 지정된 많은 사진이 있지만 EXIF ​​날짜가 일치하지 않습니다.EXIFTOOL - 파일 이름에서 datetime을 설정하십시오.

2016-12-16_20-20-29.jpg

EXIFTOOL 통해 실행 거의 날짜를 덮어 쓸 수 있지만 정확한 날짜 형식과 일치하지 않습니다.

exiftool "-datetimeoriginal<filename" ./ 

이렇게하면 날짜가 올바른 날짜로 설정되지만 시간은 무시됩니다.

exiftool "-datetimeoriginal<filename" -d "%Y-%M-%D_%H-%M-%S.%%e" ./ 

은 내가 -d 매개 변수의 데이터 형식을 설정하지만이 사용하는 올바른 방법입니다 Warning: Error parsing time in ExifIFD:DateTimeOriginal (PrintConvInv)

의 오류로 반환 생각?

답변

1

첫 번째 명령이 올바르게 작동해야합니다. Exiftool FAQ 5 :
"ExifTool은 쓰기시 입력 날짜/시간 값의 실제 형식에 매우 유연하며 -n 옵션을 사용하지 않으면 표준 형식으로 모든 값을 다시 포맷하려고 시도합니다. 사실, 아무 것도 없음) 값에서 발견 된 처음 4 개의 연속 숫자는 해로 해석되고 그 다음 2 자리 숫자는 월, 기타 등등 [연도는 4 자리 숫자 여야합니다. 다른 필드는 2 자리 숫자이어야합니다 그러나 후속 문자가 숫자가 아닌 경우 한 자리 숫자 만 허용됩니다.] "

다음 단락의 예제는 첫 번째 명령과 거의 같습니다.

이 유형의 작업에는 -d 옵션이 필요하지 않습니다.

예 출력

C:\>exiftool -datetimeoriginal "X:\!temp\2016-12-16_20-20-29.jpg" 

C:\>exiftool "-datetimeoriginal<filename" "X:\!temp\2016-12-16_20-20-29.jpg" 
    1 image files updated 

C:\>exiftool -datetimeoriginal "X:\!temp\2016-12-16_20-20-29.jpg" 
Date/Time Original    : 2016:12:16 20:20:29 
+0

백업 파일의 생성을 방지! 이전의 시도가 exif 데이터를 손상시키고 오류 응답이 그랬던 것처럼 작동하지 않았습니다. – sidonaldson

2

는 StarGeek의 좋은 답변에 최대 따르십시오.

내 exif 데이터가 손상되어 명령이 성공하지 못한 것으로 나타났습니다.

는 내가 처음
exiftool -all= −overwrite_original ./ 

가 나는 파일 이름에서 날짜를 설정하는 명령을 다시 실행 할 수 있었다 데이터

클리어를 해결하려면. 추가 보너스는 파일 쓰기/수정 날짜를 제외한 메타 데이터 내의 모든 날짜를 업데이트 한 속성 -alldates을 발견했기 때문입니다.

exiftool "-alldates<filename" −overwrite_original ./ 

.n.b −overwrite_original 당신이 올바른지

+2

몇 가지 추가 정보. 파일의 모든 메타 데이터를 지우는 대신 다음 명령어로 가능한 한 복구를 시도 할 수 있습니다 :'exiftool -all = -tagsfromfile @ -all : all -unsafe' 또한'-alldates'는 세 가지 가장 일반적인 EXIF ​​날짜/시간 태그 :'DateTimeOriginal','CreateDate' 및'ModifyDate'. 모든 datetime 태그를 변경하려면'-Time : all'을 사용하십시오. 백업 파일을 피하기 위해'-overwrite_original'을 사용할 수도 있습니다. 원본 파일을 직접 덮어 쓰지 않고 원본 파일을 먼저 복사 한 다음 복사본을 만드는 것이 조금 안전합니다. – StarGeek

+0

너무 좋은 정보. 감사합니다 @StarGeek – sidonaldson

관련 문제