Bagaimana cara mengganti nama banyak file sekaligus?


27

Saya ingin mengganti nama banyak file sekaligus. Sebagai contoh:

Picture1.jpg
Picture2.jpg
Picture3.jpg
Picture4.jpg

ke

Vacation-Picture1.jpg
Vacation-Picture2.jpg
Vacation-Picture3.jpg
Vacation-Picture4.jpg

Saya cukup akrab dengan terminal, jika tidak ada aplikasi yang cukup baik dalam mengubah nama file.

Jawaban:


26

Coba sesuatu seperti ini:

 for file in Picture*.jpg
 do
    mv "$file" "vacation-$file"
 done  

(buka terminal dan tambahkan satu baris {tekan Enter} sekaligus.)

Apa yang dilakukan adalah menggunakan file variabel untuk setiap entri yang cocok Picture*.jpg. Kemudian dibutuhkan file atau folder dan memindahkannya untuk diawali dengan "liburan".

Semoga itu bisa membantu


1
Bagaimana jika saya ingin mengganti nama Vacation-Picture4.jpgkembali Picture4.jpg? Yaitu, menghapus kata dari nama file. Terima kasih!
zyy

29

Tidak perlu untuk baris perintah ...

  1. Tambahkan semua gambar untuk diubah namanya menjadi folder.
  2. Pilih semua file, klik kanan mouse dan pilih "Ubah nama x item"
  3. Pilih "Tambahkan teks" dari menu drop down pertama
  4. Pilih "Sebelum nama" dari menu drop down kedua
  5. Masukkan "Vacation_" ke dalam kotak teks (tanpa tanda kutip)
  6. Tekan enter.

24
brew install rename

rename s/config\./route\.config\./g *

Pertama, Anda perlu menginstal homebrew. Kemudian instal rename, dan regex di atas mengganti nama semua file dengan "config." ke "route.config".

Jadi, katakan file config.a.js, dan config.b.js -> route.config.a.js, route.config.b.js.


Menurut brew desc renameperintah: "rename: skrip rename file bert-powered dengan banyak built-in yang bermanfaat". The brew home renameperintah mengarah ke http://plasmasturm.org/code/rename/ untuk dokumentasi, dll
kjones

4

Meskipun bukan solusi Terminal, saya suka Forklift untuk tujuan ini (dan untuk banyak lainnya). Dari situs web mereka:

Deskripsi fitur Multi-ganti nama Forklift


Yap, pasti ada solusi berbasis terminal. Saya juga menemukan ini di google perkasa;) manytricks.com/namemangler
YeppThat'sMe

Anda juga dapat memposting NameMangler sebagai jawaban tambahan, karena ini pada dasarnya adalah pertanyaan rekomendasi. :)
Dan J

Untuk mengganti nama banyak file (secara rekursif) dengan Forklift .. cukup pilih semua file lalu keluarkan semua direktori dengan CMD + kanan .. sampai Anda menutup semuanya .. bekerja dengan saya
Maher Abuthraa


2

Jika Anda ingin secara massal mengganti nama file, saya membuat skrip kecil untuk itu.

# Rename Bullk files.
# Renames all the files in PWD with the given extension.
#
# @param extension | jpg
# @param new_name | name
# Usage: rename jpg new_name
function rename() {
    echo "———————————————— STARTED ————————————————"

    # Counter.
    COUNTER=1

    # For do loop.
    for file in *."$1"; do
        mv "$file" "$2-$COUNTER.$1"
        COUNTER=$[$COUNTER +1]
    done
    echo "———————————————— ✔✔✔ RENAMED Every $1 file in the PWD! ✔✔✔︎ ————————————————"
}

Masukkan saja .bashrcatau .zshrcjalankan dan Usage: rename jpg new_nameini akan mengubah nama semua file jpg di PWD menjadi new_name-1.jpg, new_name-2.jpg, dll.

Tepuk tangan!


Atau untuk menempatkan fungsi dalam file .bashrc atau .zshrc saya taruh di .bash_profile saya dan berfungsi dengan baik!
Elena

1

Setelah mengunduh, ganti nama

brew install rename

jalankan perintah berikut

rename -n -A Vacation- *

-A: prepend

-n: Tunjukkan bagaimana file akan diubah namanya, tetapi sebenarnya tidak apa-apa.

Jadi, Anda harus menghapus flag -n setelah melihat hasilnya.

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.