Cara menghapus info EXIF ​​dari file di OSX dengan batch atau baris perintah

18

Saya tahu ada beberapa program Windows untuk melakukan ini, dan Photoshop memiliki opsi "Simpan untuk Web" yang melakukan ini, tetapi saya ingin opsi baris perintah atau pemrosesan batch untuk ini. Adakah pikiran?

cwd
sumber
Sudahkah Anda mencoba Automator, mungkin dengan tindakan pihak ketiga (mis. Pixelmator?)?
Daniel Beck

Jawaban:

30

Lihatlah Imagemagick . Its -strippilihan membersihkan gambar dari setiap profil dan komentar.

convert orig.jpg -strip result.jpg

atau

mogrify -strip orig.jpg

Berikut info lebih lanjut tentang penanganan foto dengan Imagemagick.

Ellesa
sumber
1
Saya tidak ingin menghabiskan banyak waktu dan meskipun tertarik untuk bekerja dengan Imagemagick, luangkan waktu lebih dari 10 menit untuk mengonfigurasinya. Saya mencoba SmallImage dan mendapatkan apa yang saya inginkan dalam 2 menit.
1
@ user200507 Mengutip OP, "Saya ingin opsi baris perintah, atau opsi pemrosesan batch untuk ini." Saya mendukung Imagemagick sebagai yang terbaik dalam hal ini.
Ellesa
Imagemagick stripjuga menghilangkan saluran hijau dan biru dari lingkaran merah semi transparan, meninggalkan lingkaran merah tanpa metadata.
psoft
6

Saya menggunakan Mac OS X — saat ini 10.9 (Mavericks) —dan saya suka menggunakan ExifTool untuk operasi metadata batch seperti ini. Telah menggunakannya dari Mac OS X 10.6 dan seterusnya dan bahkan pada rasa Linux yang berbeda seperti Ubuntu dan ini bekerja dengan sangat baik.

Sejauh skrip massal berjalan, saya menggunakan skrip Bash yang sangat sederhana ini yang digunakan finduntuk menghapus semua metadata dari gambar; dalam hal ini .jpggambar JPEG ( ):

find 'Path/To/The/Images' -type f -name '*.jpg' |\
  while read FILENAME
  do
    exiftool -all= -overwrite_original_in_place "${FILENAME}"
  done

Untuk menggunakan skrip cukup ubah 'Path/To/The/Images'agar sesuai dengan jalur direktori file gambar Anda yang sebenarnya; bisa berupa path lengkap atau relatif dan dalam hal ini relatif. Dan Anda dapat mengubah '*.jpg'untuk mencocokkan ekstensi file apa pun yang ingin Anda tindak lanjuti atau bahkan mengaturnya '*'untuk memproses semua file secara membabi buta. Saya biasanya berurusan dengan JPEG sehingga .jpgekstensi dalam skrip contoh kecil ini.

Dan keajaiban inti dari skrip itu adalah exiftoolperintah aktual yang dapat disederhanakan menjadi:

exiftool -all= -overwrite_original_in_place image_filename.jpg

Inilah -all=yang menghapus metadata dengan mengatur semua bidang metadata ke nilai yang tidak ada artinya. The -overwrite_original_in_placeakan menimpa gambar yang sebenarnya. Itu tidak memproses ulang gambar melewati membaca file, bertindak pada metadata dan menulis kembali ke sistem. Tanpa bendera itu exiftoolakan menyalin file asli dengan ekstensi yang _originalditambahkan padanya; jadi dalam hal ini akan menjadi image_filename.jpg_original. Dan parameter terakhir hanyalah nama file yang ingin Anda tindak lanjuti.

JakeGould
sumber
0

Alat exiv2 (dapat diinstal menggunakan homebrew) menyediakan cara cepat dan sederhana untuk menghapus informasi EXIF ​​dari satu atau lebih file misalnya:

exiv2 rm myfile1.jpg myfile1.jpg  
Pierz
sumber