Android

Naredba za preimenovanje u Linuxu (preimenovanje više datoteka)

Serijska datoteka - Unos, Brisanje, Pretraga

Serijska datoteka - Unos, Brisanje, Pretraga

Sadržaj:

Anonim

Preimenovanje više datoteka i mapa pomoću mv naredbe može biti naporan proces jer uključuje pisanje složenih naredbi cijevima, petljama i tako dalje.

Ovo je mjesto gdje dolazi naredba za rename . Dane datoteke preimenova naziv zamjenjujući izraz pretraživanja u njihovom imenu navedenom zamjenom.

U ovom ćemo vodiču objasniti kako koristiti naredbu rename za skupljanje preimenovanja datoteka.

Instalacija rename

Postoje dvije verzije naredbe rename s različitim sintaksama i značajkama. Koristit ćemo Perl verziju naredbe rename .

Ako ova verzija nije instalirana na vašem sustavu, upotrijebite upravitelja paketa distribucije Linuxa:

  • Ubuntu i Debian

    sudo apt update sudo apt install rename

    CentOS i Fedora

    sudo yum install prename

    Arch Linux

    yay perl-rename

Korištenje rename

Slijedi opća sintaksa za naredbu rename :

rename perlexpr files

Naredba za rename osnovi je Perl skripta. Preimenovat će files skladu s redovitim izrazom perlexpr . O redovnim izrazima Perla možete pročitati ovdje.

Na primjer, sljedeća naredba promijenit će ekstenziju svih .css datoteka u .scss :

rename 's/.css/.scss/' *.css

Objasnimo naredbu u više detalja:

  • s/search_pattern/replacement/ - operator zamjene. .css - Obrazac pretraživanja. To je prvi argument operatora zamjene. Naredba za rename pretražit će ovaj uzorak u datom nazivu datoteke i ako ga nađe zamijenit će ga argumentom zamjene. .scss - Zamjena. Drugi argument u operateru zamjene. *.css - Sve datoteke s nastavkom ".css". Nadimak ( * ) je simbol koji se koristi za predstavljanje nula, jednog ili više znakova.

Prije pokretanja stvarne naredbe i preimenovanja datoteka i mapa uvijek je dobra opcija -n koja će izvesti "suho trčanje" i pokazati koje će datoteke biti preimenovane:

rename -n 's/.css/.scss/' *.css

Izlaz će izgledati ovako:

rename(file-0.css, file-0.scss) rename(file-1.css, file-1.scss) rename(file-2.css, file-2.scss) rename(file-3.css, file-3.scss) rename(file-4.css, file-4.scss)

rename naredba rename ne prepisuje postojeće datoteke. Upotrijebite opciju -f koja kaže rename da biste prebrisali postojeće datoteke:

rename -f 's/.css/.scss/' *.css

rename -v 's/.css/.scss/' *.css

file-0.css renamed as file-0.scss file-1.css renamed as file-1.scss file-2.css renamed as file-2.scss file-3.css renamed as file-3.scss file-4.css renamed as file-4.scss

preimenovati

rename 's/\.jpe?g$/.jpg/i' *

Zaključak

Naredba za rename omogućuje vam preimenovanje više datoteka odjednom, koristeći Perl regularne izraze.

preimenovati terminal