Saya ingin menentukan direktori dan meminta perangkat lunak menemukan semua foto dalam direktori dan sub-direktori-nya, dan jika mereka berisi tanggal / waktu EXIF, itu akan menentukan stempel waktu sistem file untuk mencocokkan EXIF.
Saya ingin menentukan direktori dan meminta perangkat lunak menemukan semua foto dalam direktori dan sub-direktori-nya, dan jika mereka berisi tanggal / waktu EXIF, itu akan menentukan stempel waktu sistem file untuk mencocokkan EXIF.
Jawaban:
Ini kebalikan dari Apakah ada perangkat lunak yang akan menetapkan Tanggal EXIF berdasarkan tanggal modifikasi file? , dan saya yakin semua program yang terdaftar di sana akan berlaku.
Dari semua ini, untuk tugas yang sangat sederhana ini, jhead adalah saran saya. Misalnya, perintahnya
jhead -ft *.jpg
menetapkan banyak file sehingga cap waktu file cocok dengan EXIF.
find
, untuk melalui subdirektoriUntuk melakukan rekursi ke dalam subdirektori, Anda bisa menggabungkannya dengan find
perintah yang tersedia di Linux / Unix / Mac (atau Cygwin untuk Windows):
find -name '*.jpg' -exec jhead -ft {} +
Atau untuk menemukan salah satu dari *.JPG *.JPEG *.jpg *.jpeg ...
Anda juga dapat mencoba
find -iname '*.jp*g' -exec jhead -ft {} +
Anda juga dapat menggunakan find untuk hanya menampilkan semua file yang akan ... ditemukan, tanpa menjalankan perintah lain (seperti jhead):
find -iname '*.jp*g'
Utilitas lain seperti ExifTool atau Exiv2 jauh lebih mampu, tetapi dengan harga yang rumit. Saya tidak pernah bisa mengingat begitu saja pilihan yang tepat untuk melakukan apa pun dengan itu dan harus melihat dokumentasi setiap waktu, tetapi jhead -ft
mudah diingat dengan mnemonic "fix time".
Hanya untuk kelengkapan, meskipun, saya melakukan lihat dokumentasi, dan dengan ExifTool , lakukan ini:
exiftool -r '-DateTimeOriginal>FileModifyDate' directoryname
(Hapus -r
jika Anda tidak ingin rekursi, dan jika Anda melakukannya, Anda juga dapat memberikan daftar file atau wildcard sebagai ganti directoryname
.) Dan berhati-hatilah dengan tanda kutip itu - jika Anda menjalankan ini pada Windows, Anda ingin "
bukannya '
.
Dengan Exiv2 :
exiv2 -T rename *.jpg
Hati-hati dengan huruf kecil -t
(atau tanpa huruf apa pun -T
) Exiv2 juga akan mengganti nama file menjadi nama baru berdasarkan stempel waktu, yang mungkin sangat membingungkan. Exiv2 juga tidak melakukan rekursi.
find -name '[0-9][0-9]*' -o -iname '*.jp*g' -type f -exec jhead -ft -n%Y%m%d_%H%M%S_%f {} +
. Penjelasan: -name '[0-9][0-9]*'
untuk mencegah penggantian nama lagi file yang sudah memiliki awalan tanggal ( '[0-9][0-9]
untuk memperhitungkan tahun dan bulan). -iname '*.jp*g'
dapat dilewati karena jhead
hanya memproses file yang didukung (hanya file JPEG). %f
untuk menyimpan nama file asli.
Irfanview dan jhead akan melakukan apa yang Anda inginkan.
Keduanya gratis.
Tautan keduanya di bawah.
jhead adalah command line driven atau dapat dipanggil oleh proses lain.
Versi Irfanview dapat dipanggil dari baris perintah atau secara internal dalam batch atau berdasarkan file dengan file.
Contoh di bawah untuk Irfanview menunjukkan cara menyalin di kedua arah:
Irfanview
Mengizinkan GUI atau perubahan baris perintah batch atau per transfer tanggal / waktu file dari EXIF ke file spesifikasi atau sebaliknya (tanpa perubahan file lain jika diinginkan).
Sumber: Gratis dari www.irfanview.com
Ini JAUH lebih mudah dan lebih cepat dalam praktek setelah hanya beberapa penggunaan daripada instruksi di bawah ini membuatnya muncul. mis.
Untuk mengonversi tanggal / waktu file tunggal ke nilai EXIF memerlukan
Shift-J, Alt-F, Enter.
Melihat mengapa beberapa kali pertama memakan waktu lebih lama.
Untuk melakukan ini untuk batch file SOUNDS complex untuk dipelajari -
Dibutuhkan: T, Ctrl-A, Alt-F, J, Enter, (Alt-F), Enter
(Atau: T, Ctrl-A, Shift-J, Enter) (memberikan opsi lebih sedikit)
TETAPI sebenarnya hampir sepenuhnya intuitif setelah sedikit digunakan - menu memandu Anda pada awalnya sampai jalur otak terbentuk.
GUI, per file
Options, JPG lossless rotation (Shift-J)
Select "Apply original EXIF date/time to new file"
Consider also selecting other options
GUI, satu atau banyak file (melalui tampilan Gambar Kecil)
Open Thumbnails view ('File, Thumbnails' or 'T' from Window view
Select images to change EXIF data of
usually all in folder -> Ctrl-A
Then: File, 'JPG lossless operations'
(1) Change EXIF date/time
"Change EXIF date/time"
Options are offered to set Date/time to specific setting
or to move all times back/forwards by selected DHMS amount
calculator provided to check result is as desired.
(2) Transfer EXIF date / time to file saved date time
"Lossless rotation with selected files" [Shift-J]
then, as for single file version above
Select "Apply original EXIF date/time to new file"
Dari baris perintah - ini adalah "putar" tanpa tindakan kecuali untuk menyalin tanggal / waktu dari EXIF ke file tanggal dan waktu. Yang sebaliknya juga bisa dicapai jika diinginkan. :
i_view32.exe file_spec \ *. jpg / jpg_rotate = (0,0,0,1,0,0,0,0,0)
Untuk menyalin tanggal / waktu dalam arah yang berlawanan ((filespec ke EXIF)
gunakan seperti di atas dengan (0,0,1,0,0,0,0,0,0)
jhead
akan melakukan apa saja yang dapat Anda bayangkan dengan file jpeg
Sumber: Gratis dari http://www.sentex.net/~mwandel/jhead/
Saya menggunakan file batch seperti di bawah ini. Opsi lain dimungkinkan:
Mereka mengatakan: Hal-hal yang dapat diubah oleh jhead dalam file jpeg exif
_________________________
Catatan: Agustus 2016: "Pengguna anonim" dengan benar menyarankan bahwa satu konversi yang disarankan tidak berfungsi seperti yang saya katakan. Saya sudah banyak menambah area yang bersangkutan.
Hanya alat EXIF baris perintah lain yang dapat mengubah tanggal modifikasi file agar sesuai dengan waktu pengambilan gambar, berdasarkan pada metada EXIF dalam file gambar JPEG:
exiv2 -T rename somedir/foo*.jpg
Jangan khawatir, argumen perintahnya rename
ok di sana dan tidak ada salahnya.
Hanya saja tindakan ganti nama file disalahgunakan untuk hanya membuat efek samping dari mengubah cap waktu.
Meskipun saya benar - benar tidak merekomendasikan mengandalkan tanggal / waktu file ketika datang ke gambar Anda, Anda dapat menggunakan alat gratis yang disebut EXIF Date Changer untuk mengatur tanggal file semua gambar JPG Anda. Pengaturan standar akan menetapkan tanggal yang dibuat dan tanggal yang diubah tanggal file ke foto yang diambil.
Alasan mengapa saya tidak merekomendasikan ini adalah tanggal file mudah diperbarui. Jika Anda mengedit gambar tanggal yang diubah akan diperbarui. Jika Anda menyalin gambar itu mendapat tanggal baru.
Solusi yang jauh lebih baik adalah mengubah nama file untuk memasukkan tanggal / waktu dalam nama file itu sendiri. Ini masih memungkinkan penyortiran yang mudah dan berfungsi dengan baik dengan gambar yang disimpan di iPhone / dropbox.
Lihat perangkat lunak gratis saya yang baru "Photo Date Organizer": http://photodateorganizer.sourceforge.net/
FastStone Image Viewer dapat melakukan ini (versi 4.9 digunakan) - cukup pilih file dalam panel thumbnail, klik kanan, pilih "Alat"> "Ubah Stempel Waktu" - maka Anda dapat menggunakan data EXIF (dengan atau tanpa modifikasi) atau menggunakan keseluruhan tanggal / waktu manual tetap yang disesuaikan.
Advance Renamer adalah perangkat lunak ramah pengguna terbaik yang sangat sederhana.
Seret dan lepas semua foto ke AR (Advamer Renamer)
Klik pada (Kiri atas) Tambahkan Metode -> Nama Baru
Klik pada salah satu gambar tengah bawah Anda akan melihat tombol ExifTool yang menunjukkan semua metadata klik pada atribut dan Anda akan mendapatkan tag. Dalam hal ini adalah<ExifTool:DateTimeOriginal>
Salin ini dan rekatkan di kotak teks Nama Baru Anda dapat menambahkan apa pun sebelum atau setelah sukaIMG_<ExifTool:DateTimeOriginal>
, DSC_<ExifTool:DateTimeOriginal>
dll.
Klik Mulai kumpulan (Kanan Atas) Ini akan mengubah nama semua file Anda dengan tanggal Misalnya 2017_12_01 19_10_12 Itu selalu baik untuk memiliki tanggal asli dalam nama file menyebabkan atribut mungkin hilang tetapi nama file tidak.
<Year>_<Month>_<Day> <Hour>_<Min>_<Sec>
Saya menyarankannya ke penulis PhotoRenamer, yang menjawab ...
PhotoRenamer 3.2 http://www.tgmdev.be/applications/photorenamer/photorenamer.php
Saya menambahkan tombol di tab 'Opsi' pada Pita .. Dari sana, Anda dapat memilih opsi untuk memperbarui status waktu file dari file tersebut ..
Ngomong-ngomong, untuk menghindari penggunaan topeng, saya juga menambahkan atribut topeng baru:% F. Jika Anda menggunakan topeng sederhana ini, file tersebut diganti namanya ... dengan nama itu sendiri ... Jadi Anda tidak wajib mengganti nama file yang ingin Anda perbarui atribut waktu file ...
Ini adalah pertanyaan lama dan sepertinya ada beberapa saran yang harus bekerja dengan baik, tetapi yang saya datangi untuk mengurutkan masalah pemesanan file setelah upgrade ponsel Android adalah ini.
Mungkin ini akan bermanfaat bagi seseorang.
Program gratis lainnya adalah Google Picasa - Anda dapat dengan mudah mengubah tanggal dan waktu untuk semua foto:
Artikel yang bagus tentang hal itu: Cara Mengubah Tanggal Foto di Picasa menjadi Saat Foto Diambil