![exiv2를 사용하여 특정 Exif 이미지 데이터 값 인쇄](https://linux55.com/image/16352/exiv2%EB%A5%BC%20%EC%82%AC%EC%9A%A9%ED%95%98%EC%97%AC%20%ED%8A%B9%EC%A0%95%20Exif%20%EC%9D%B4%EB%AF%B8%EC%A7%80%20%EB%8D%B0%EC%9D%B4%ED%84%B0%20%EA%B0%92%20%EC%9D%B8%EC%87%84.png)
유사한 도구를 사용하여 이미지 Exif 날짜를 인쇄하는 방법은 무엇입니까 exiv2
?
내 목표는 이미지 연도와 월을 별도의 변수에 작성하는 것입니다. 실제로 정규식을 사용하여 출력을 구문 분석해야 합니까? 아니면 다른 옵션이 있습니까?
exiv2 DSC_01234.NEF -ps | grep 'Image timestamp' | ...regex to parse the date
답변1
이 -g
플래그를 사용하여 관심 있는 속성만 출력하고, -Pv
주변의 보풀 없이 값을 인쇄할 수 있습니다. 결과는 분석하기 쉽습니다.
IFS=': '
set $(exiv2 -g Exif.Image.DateTime -Pv DSC_01234.NEF)
unset IFS
year=$1 month=$2 day=$3 hour=$4 minute=$5 second=$6
이미지 날짜와 일치하도록 파일 날짜를 변경하는 것도 도움이 될 수 있습니다 exiv2 -T DSC_01234.NEF
.
답변2
OIFS=$IFS; IFS=': '
set -- $(exiv2 -g Exif.Image.DateTime -Pv DSC_01234.NEF)
IFS=$OIFS;
year=$1; month=$2; day=$3; hour=$4; minute=$5; second=$6;
echo "$year:$month:$day $hour:$minute:$second"