Jak zmienić nazwę wielu plików jednocześnie?


27

Chcę zmienić nazwę wielu plików jednocześnie. Na przykład:

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

w

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

Jestem całkiem obeznany z terminalem, jeśli nie ma aplikacji, która byłaby całkiem dobra w zmianie nazw plików.

Odpowiedzi:


26

Wypróbuj coś takiego:

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

(otwórz terminal i dodaj jedną linię {naciśnij Enter} na raz.)

To, co robi, używa pliku zmiennej dla każdego dopasowania pozycji Picture*.jpg. Następnie pobiera plik lub folder i przenosi go, aby poprzedzić go słowem „wakacje”.

Mam nadzieję, że to pomaga


1
Co jeśli chciałbym zmienić nazwę z Vacation-Picture4.jpgpowrotem na Picture4.jpg? Mianowicie usunięcie słowa z nazwy pliku. Dzięki!
zyy

29

Nie ma potrzeby wiersza poleceń ...

  1. Dodaj wszystkie obrazy, których nazwy chcesz zmienić, do folderu.
  2. Wybierz wszystkie pliki, kliknij prawym przyciskiem myszy i wybierz „Zmień nazwę x elementów”
  3. Wybierz „Dodaj tekst” z pierwszego menu rozwijanego
  4. Wybierz „Przed nazwą” z drugiego menu rozwijanego
  5. Wpisz „Vacation_” w polu tekstowym (bez cudzysłowu)
  6. Naciśnij enter.

24
brew install rename

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

Najpierw musisz zainstalować Homebrew. Następnie zainstaluj rename, a powyższe wyrażenie regularne zmienia nazwy wszystkich plików na „config”. do „route.config”.

Powiedzmy, że pliki config.a.js i config.b.js -> route.config.a.js, route.config.b.js.


Zgodnie z brew desc renamepoleceniem: „rename: skrypt zmieniający nazwę pliku z Perlem i wieloma przydatnymi wbudowanymi funkcjami”. Te brew home renameprzewody polecenie do http://plasmasturm.org/code/rename/ dla dokumentacji itp
kjones

4

Chociaż nie jest to rozwiązanie terminalowe, w tym celu lubię Forklift (i wiele innych). Z ich strony internetowej:

Opis funkcji wielokrotnej zmiany nazwy wózka widłowego


Tak, na pewno istnieje rozwiązanie oparte na terminalu. Znalazłem to również w potężnym google;) manytricks.com/namemangler
YeppThat'sMe

Możesz również wysłać NameMangler jako dodatkową odpowiedź, ponieważ jest to w zasadzie pytanie rekomendacyjne. :)
Dan J

Aby zmienić nazwę wielu plików (rekurencyjnie) za pomocą wózka widłowego .. wystarczy wybrać wszystkie pliki, a następnie wydać wszystkie katalogi przez CMD + w prawo ... dopóki nie
pokryjesz


2

Jeśli chcesz masowo zmieniać nazwy plików, stworzyłem do tego mały skrypt.

# 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! ✔✔✔︎ ————————————————"
}

Po prostu włóż go do swojego .bashrclub .zshrci uruchom Usage: rename jpg new_nameto spowoduje zmianę nazwy wszystkich plików jpg w PWD na new_name-1.jpg, new_name-2.jpg itp.

Twoje zdrowie!


Alternatywnie, aby umieścić funkcję w plikach .bashrc lub .zshrc, umieściłem ją w moim profilu .bash_profile i działa świetnie!
Elena

1

Po pobraniu zmień nazwę

brew install rename

uruchom następujące polecenie

rename -n -A Vacation- *

-A: prepend

-n: pokazuje, jak zmieniono by nazwy plików, ale w rzeczywistości nic.

Dlatego powinieneś usunąć flagi -n po sprawdzeniu wyniku.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.