Bagaimana saya bisa mengganti nama banyak gambar secara bersamaan?


13

Sebagai contoh, saya memiliki 20 gambar yang diunduh dari Internet. Mereka memiliki beberapa nama gila seperti "XFGHDHR345" atau "SDEREWQ230", dan saya ingin memberi nama:

"Gambar 1"
"Gambar 2"
"Gambar 3"
"Gambar 4"
"Gambar 5"
.....
"Gambar 20"

Saya tidak ingin mengetiknya satu per satu. Saya ingin mengganti nama mereka sekaligus.

Apakah ada cara untuk melakukan ini?


Bagi mereka yang memiliki Photoshop, itu melakukan pekerjaan yang sangat bagus dengan mudah melakukan ini.
bassplayer7

Jawaban:


16

Menggunakan alat bawaan "Automator", Anda dapat menentukan alur kerja untuk menamai ulang file.

Untuk melakukan itu, Anda harus:

  1. Open Automator menemukannya menggunakan Spotlight atau di / Aplikasi
  2. Buat Alur Kerja baru
  3. Ketik masuk ke bidang pencarian masukkan deskripsi gambar di sini

  4. Gulir ke bagian bawah daftar item dan seret Dapatkan Item Spesifik dari daftar tindakan Files & Folders di panel kiri dan letakkan di panel kanan

  5. Klik tombol Tambah dan temukan file Anda
  6. Tambahkan tindakan Sortir Item Finder diikuti oleh Ubah Nama Item Finder
  7. Di panel "Ubah Nama Pencari Item" , pilih "Make Sequential" dan "Add number to" Picture
  8. Tekan tombol play dan Anda harus selesai

Lihat tutorial di sini atau di sini untuk contoh tentang tugas penggantian nama khusus Anda. Tinjauan luar biasa tentang apa yang dilakukan Automator dan seberapa kuat (dan sederhana) itu sebagai asisten pribadi - lihat halaman web http://macosxautomation.com/automator/index.html


Contoh Automator yang bagus - ini jelas dimaksudkan untuk kasus ini untuk membersihkan file foto. Saya akan menambahkan kakek dari sumber daya Automator, macosxautomation.com/automator/id/index.html dari Sal Saghoian
bmike

13

Ya, Anda dapat menggunakan Terminal:

  1. Pindahkan semua gambar Anda ke folder sementara di Desktop, misalnya Temp.

  2. Buka Aplikasi> Utilitas> Terminal.app.

  3. Ubah direktori menjadi Temp:

    cd ~/Desktop/Temp
    

    di mana ~diperluas ke direktori home Anda (yaitu /Users/<yourusername>,.)

  4. Jalankan perintah compound shell ini:

    n=1; for file in *; do mv "$file" "Picture $n"; let n++; done
    

    dimana:

    • for ...; do ...; doneloop lebih dari 20 file Anda. fileadalah variabel yang menyimpan nama file. Lihat artikel ini untuk informasi lebih lanjut.

    • n, awalnya diatur ke 1 dan bertambah satu dalam setiap iterasi dengan let n++, adalah akhiran bilangan bulat untuk file yang diubah namanya.

    • mv "$file" "Picture $n"mengganti nama file. $nadalah nilai variabel n.

    Perintah shell setara dengan:

    mv SDEREWQ230 "Picture 1"
    mv XFGHDHR345 "Picture 2"
    mv YWUU7738DT "Picture 3"
    (...)
    

Untuk informasi lebih lanjut tentang bash shell lihat man bash . Untuk informasi lebih lanjut tentang skrip shell, lihat panduan ini di situs web pengembang Apple.


1
Ini adalah penjelasan yang jauh lebih baik tentang penggunaan shell untuk menangani pengeditan file daripada yang kita miliki di sana . Memang, contoh itu adalah edit sederhana - semua file dengan pola ABC perlu diganti nama menjadi 123 sehingga ini harus sedikit lebih kompleks. +2 jika saya memiliki dua suara.
bmike

@ Jadav Saya tidak berpikir Anda menghitung penekanan tombol dengan benar di sini. Bahkan jika Anda mengetikkan Finder dan menekan Enter pada masing-masing alih-alih mengklik, itu masih lebih efisien untuk menjalankan skrip, bahkan jika Anda hanya melakukan 20 gambar.
zigg

Dibandingkan dengan solusi Automator! Tetapi yang lebih baru daripada yang lebih sedikit itu adalah program yang mengesankan di pihak Anda.
Jadav

4

Jika Anda ingin menambahkan angka-angka atau jika file memiliki ekstensi yang berbeda:

i=1; for f in *; do mv "$f" Picture\ $(printf %03d $i).${f#*.}; let i++; done

Lebih banyak contoh:

# lowercase (Bash 4) and replace spaces with underscores
for f in *; do f2=${f,,}; mv "$f" "${f2// /_}"; done

# number based on modification date
IFS=$'\n'; i=1; for f in $(ls -rt *.jpg); do mv "$f" $(printf %04d $i).jpg; let i++; done

# file-5.jpg to file-005.jpg
for f in *; do b=${f%.*}; x=${f#*.}; mv "$f" "${b%-*}-$(printf %03d ${b#*-}).$x"; done

HOLA @Luriuri Ranta, apakah itu bahasa Inggris :), atau apakah komputer akan terbakar setelah melakukan hal itu?
Jadav

4

Jika Anda memiliki Yosemite, itu dibangun ke Finder. Cukup pilih file, klik kanan dan pilih "Ubah nama file n ". Kemudian ubah dropdown menjadi "Filter" dan voila! Anda memiliki opsi penggantian nama batch!


Wow! Belum menyadarinya. Juga termasuk opsi untuk menambahkan teks, dan beberapa tindakan pemformatan yang lebih menarik. Operasi tidak dapat dibatalkan oleh Finder.
Wayfaring Stranger

Wow! Terima kasih untuk ini. Saya tidak percaya hanya butuh 1,5 detik untuk mengubah nama sekitar 50 gambar. Kemudian, @badabamn, solusi itu bahkan lebih cepat !!! Terimakasih untuk semua!
JJ Spelman

3

Jika Anda tidak ingin menggunakan Terminal atau Automator, ada aplikasi komersial dengan GUI untuk melakukan ini. Salah satunya adalah A Better Finder Rename , yang memiliki versi uji coba gratis.


+1 untuk ABFR - walaupun biayanya $ 20, cukup mudah menangani tugas khusus ini, di mana nama file awalnya acak, dan banyak tugas pengubahan nama batch lain yang lebih kompleks.
calum_b

Saya selalu suka menunjukkan pilihan untuk menggunakan aplikasi utilitas komersial dengan GUI yang bagus karena banyak pengguna biasa menemukan bahwa menggunakan Terminal atau Automator terlalu sulit untuk beberapa tugas. ABFR adalah contoh produk olahan yang sangat fleksibel dan berfungsi dengan baik. Bagi banyak pengguna, menghabiskan $ 20 adalah pilihan yang lebih baik daripada mempelajari kompleksitas perintah teks yang jarang digunakan. Anda dapat memutuskan mana yang ingin Anda gunakan.

3

Saya akan merekomendasikan di sini aplikasi NameChanger . Sangat sederhana dan cepat digunakan. Opsi yang sangat bagus diberikan di sana untuk mengganti nama file dengan kriteria berbeda.

Dengan menggunakan situs kami, Anda mengakui telah membaca dan memahami Kebijakan Cookie dan Kebijakan Privasi kami.
Licensed under cc by-sa 3.0 with attribution required.