ลองดูที่ExifTool มันเป็นมีดกองทัพสวิสของการจัดการข้อมูล Exif สามารถทำสิ่งที่คุณต้องการเหนือสิ่งอื่นใด มันเป็นเครื่องมือบรรทัดคำสั่งที่เข้ากันได้กับ Windows / Linux / Mac และโมดูล Perl เช่นกัน ฟรีและโอเพ่นซอร์ส:
ตัวเลือก "-tagsFromFile"
ตัวเลือก ExifTool พิเศษอนุญาตให้คัดลอกแท็กจากไฟล์หนึ่งไปยังอีกไฟล์หนึ่ง ไวยากรณ์บรรทัดคำสั่งสำหรับการทำเช่นนี้คือ "-tagsFromFile SRCFILE" แท็กใด ๆ ที่ระบุหลังจากตัวเลือกนี้ในบรรทัดคำสั่งจะถูกแยกจากไฟล์ต้นฉบับและเขียนไปยังไฟล์ปลายทาง หากไม่มีการระบุแท็กแท็กที่เขียนได้ทั้งหมดจะถูกคัดลอก ตัวเลือกนี้ง่ายมาก แต่ทรงพลังมาก ขึ้นอยู่กับรูปแบบของไฟล์ต้นทางและไฟล์ปลายทางการอ่านแท็กบางรายการอาจไม่ถูกต้องในไฟล์ปลายทางซึ่งในกรณีนี้ไฟล์เหล่านั้นจะไม่ถูกเขียน
คำสั่งต่อไปนี้จะเปลี่ยนไฟล์ทั้งหมดในไดเรกทอรีปัจจุบันและลูก ๆ ของมัน (เรียกซ้ำ) คัดลอกแท็กที่เกี่ยวข้องกับ GPS ทั้งหมดจากไฟล์SOURCE.JPG
:
exiftool −overwrite_original_in_place -r -tagsFromFile SOURCE.JPG -gps: all
อีกวิธีในการทำเช่นนี้คือการใส่สิ่งต่อไปนี้ลงในสคริปต์ พารามิเตอร์แรกที่ผ่านควรเป็นไฟล์ที่จะคัดลอกพิกัด GPS จากและพารามิเตอร์อื่น ๆ ทั้งหมดเป็นไฟล์เป้าหมายที่จะอัปเดต:
#!/usr/bin/env bash
lon=$(exiftool -s3 -GPSLongitude "$1")
lat=$(exiftool -s3 -GPSLatitude "$1")
exiftool -GPSLongitude="$lon" -GPSLatitude="$lat" "${@:2}"