Johdanto
Linux tarjoaa useita vaihtoehtoja tiedostojen uudelleennimeämiseksi, mukaan lukien GUI: n ja useiden dedikoitujen terminaalikomentojen käyttö. Tämä tekee siitä suhteellisen helppoa nimetä yksittäisiä tiedostoja, mutta se voi olla haastavaa nimetä useita tiedostoja kerralla.
tässä opetusohjelmassa käydään läpi erilaisia komentoja, joita voit käyttää Linux-päätteessä tiedostojen nimeämiseen uudelleen Linuxissa.
Edeltävät opinnot
- Linux-jakelua käyttävä järjestelmä
- käyttäjätili, jolla on sudo-oikeudet
- pääsy pääteikkunaan/komentoriville
- pääsy tekstieditoriin, kuten Vim tai Nano
Uudelleennimeä tiedostot MV-komennolla
Linux mv
(siirrä) – komentoa käytetään tiedostojen ja hakemistojen siirtämiseen päätteestä. Se käyttää seuraavaa syntaksia:
mv
jos komennolla mv
määrität kohdehakemiston, lähdekooditiedosto siirtyy kyseiseen hakemistoon. Jos kohde on toinen tiedostonimi, komento mv
nimeää lähdekooditiedoston uudelleen tälle nimelle.
Huomautus: lisätietoja MV-komennon käytöstä oppaassamme liikkuvat hakemistot Linuxissa.
Uudelleennimeä yksittäinen tiedosto MV-komennolla
käyttämällä mv
– komentoa sen oletussyntaksilla voit nimetä yhden tiedoston uudelleen:
mv
esimerkiksi, jos haluamme nimetä example1.txt esimerkki2.txt, käyttäisimme:
mv example1.txt example2.txt
koska komennon onnistuessa tulostetta ei ole, tarkistamme komennolla ls
, onko nimi muutettu:
ls -l
nimeä useita tiedostoja uudelleen MV-komennolla
yksinään, mv
– komento nimeää yhden tiedoston uudelleen. Kuitenkin, yhdistämällä se muiden komentojen avulla voit nimetä useita tiedostoja samanaikaisesti.
yksi tapa on käyttää find
– komentoa valitsemaan useita samannimisiä tiedostoja, minkä jälkeen käyttää mv
– komentoa niiden nimeämiseen uudelleen:
find . -depth -name "" -exec sh -c 'f="{}"; mv -- "$f" "${f%}"' \;
tätä syntaksia käyttäen komento find
määrittelee hakuparametriksi nykyisen tiedostonimen elementin. Seuraavaksi -exec
suorittaa mv
– komennon mille tahansa hakua vastaavalle tiedostolle vaihtaen nykyiset tiedostonimet uuteen.
esimerkiksi, jos meillä on esimerkki1.txt, esimerkki 2.txt, ja esimerkki 3.txt ja haluavat muuttaa laajennus .pdf:
find . -depth -name "*.txt" -exec sh -c 'f="{}"; mv -- "$f" "${f%.txt}.pdf"' \;
toinen tapa on käyttää mv
– komentoa <strong>for</strong>
– silmukan osana bash-skriptiä.
aloita luomalla ja avaamalla bash-komentosarjatiedosto tekstieditorilla, kuten Nano:
sudo nano rename_files.sh
Huomautus: lisätietoja bash-skriptien käytöstä tiedostojen ja hakemistojen hallintaan Linuxissa.
lisää seuraavat rivit komentosarjaan:
#!/bin/bashfor f in *.txt; do mv -- "$f" "${f%.txt}.pdf"done
yllä olevassa käsikirjoituksessa:
- ensimmäisellä rivillä ohjeistetaan skriptiä etsimään kaikki nykyiseen hakemistoon päättyvät tiedostot .txt.
- toinen rivi käyttää
mv
– komentoa jokaisessa löydetyssä tiedostossa korvaamaan.txt laajennus kanssa .pdf. - kolmas rivi päättää silmukkasegmentin.
paina Ctrl+X, kirjoita sitten Y ja tallenna muutokset komentosarjaan ja poistu painamalla Enter.
käytä sh
– komentoa komentosarjan suorittamiseen:
sh rename_files.sh
Nimeä tiedosto uudelleen nimeä-komennolla
rename
– komentoa käytetään nimeämään useita tiedostoja tai hakemistoja uudelleen Linuxissa. Se tarjoaa enemmän ominaisuuksia kuin mv
– komento, mutta voi olla haastavampi käyttää, koska se vaatii Perl-lausekkeiden perustuntemusta.
kuinka uudelleennimeämiskomento
asennetaan moniin Linux-jakeluihin, rename
– komento ei ole oletusarvoisesti käytettävissä. Jos järjestelmästäsi puuttuu komento rename
, asenna se:
- Ubuntulle ja Debianille, käytä
sudo apt install rename
- Centoille ja Fedoralle, käytä
sudo yum install prename
- Arch Linuxille, käytä
sudo pacman -S
nimeä
uudelleennimeä komennon syntaksi ja vaihtoehdot
on olemassa kolmenlaisia Perl-säännöllisiä lausekkeita: ottelu, korvike ja käännä. Komento rename
käyttää korvaavia ja kääntäviä lausekkeita tiedostojen ja hakemistojen nimien muuttamiseen.
korvaavat lausekkeet korvaavat osan tiedostonimestä eri merkkijonolla. Ne käyttävät seuraavaa syntaksia:
rename 's///'
tällä syntaksilla komento nimeää tiedoston uudelleen korvaamalla tiedostonimielementin ensimmäisen esiintymän korvaavalla. Yllä olevassa komennossa:
-
rename
: kutsuu Nimeä uudelleen-komennon. -
: tarjoaa valinnaisen argumentin, joka muuttaa komennon suoritustapaa.
-
s
: osoittaa korvaavan ilmaisun. -
: määrittää sen tiedostonimen osan, jonka haluat korvata.
-
: määrittää nykyisen tiedostonimen osan korvaajan.
-
: määrittää tiedoston, jonka haluat nimetä uudelleen.
kääntävä lauseke kääntää yhden merkkijonon toiseksi, merkki merkiksi. Tämän tyyppinen lauseke käyttää seuraavaa syntaksia:
rename 'y///'
esimerkki rename
– komennosta, jossa käytetään kääntölauseketta:
rename 'y/abc/xyz/'
tässä esimerkissä jokainen tiedostonimen a-merkki korvataan x: llä, jokainen b: llä y: llä ja jokainen c: llä z: llä.
Nimeä-komento käyttää seuraavia vaihtoehtoja:
-
-a
: korvaa kaikki esiintymät tiedostonimi Elementti sijasta vain ensimmäinen. -
-f
: Pakottaa olemassa olevien tiedostojen ylikirjoituksen. -
-h
: näyttää ohjetekstin. -
-i
: näyttää kehotuksen ennen olemassa olevien tiedostojen korvaamista. -
-l
: korvaa tiedostonimi-elementin viimeisen esiintymisen ensimmäisen sijaan. -
-n
: suorittaa kuivakäynnin, eikä tee pysyviä muutoksia. Parhaiten yhdistettiin monivivahteinen lähtö (-v
). -
-s
: nimeää kohteen uudelleen symbolin sijaan. -
-v
: näyttää tulosteen monisanaisen version. -
-V
: näyttää komentoversion.
nimeä Komentoesimerkit
1. Muuta tiedostopääte
palataan edelliseen esimerkkiin, jotta tiedostopääte voidaan vaihtaa .txt to .pdf, käytä:
rename -v 's/.txt/.pdf/' *.txt
2. Tiedostonimen
osan korvaaminen tiedostonimellä seuraa samaa syntaksia. Nimetä esimerkki uudelleen1.txt, esimerkki 2.txt, ja esimerkki 3.txt TESTI1: lle.txt, test2.txt, ja text3.txt, käytä:
rename -v 's/example/test/' *.txt
3. Poista osa tiedostonimestä
valitsimella rename
voit myös poistaa osan tiedostonimestä jättämällä pois lausekkeen korvaavan osan. Esimerkiksi, jos haluamme lyhentää esimerkki Ex:
rename -v 's/ample//' *.txt
4. Uudelleennimeä tiedostoja, joilla on sama nimi
toinen rename
– vaihtoehto on nimetä tiedostoja, joilla on sama nimi. Esimerkiksi, jos haluamme nimetä tiedostoja esimerkki ja näyte niiden nimi testata:
rename -v 's/(ex|s)ample/test/' *.txt
5. Nimeä tiedostot uudelleen merkkikohtaisesti
komennolla rename
voit myös käyttää käännöslausekkeita tiedostojen nimeämiseen merkkikohtaisesti. Esimerkiksi, jos haluat nimetä useita tiedostoja nimetty esimerkki tiedosto korvaamalla tyhjä tila alaviiva (_):
rename -v 'y/ /\_/' *.txt
6. Muunna pienet merkit
muuttaaksesi pienet merkit tiedostonimissä isoiksi kirjaimiksi, käytä:
rename -v 'y/a-z/A-Z/' *.txt
7. Muunna suuraakkoset
myös käänteiskäännös toimii, jos vaihdamme suur-ja pienaakkosten järjestystä lausekkeessa:
rename -v 'y/A-Z/a-z/' *.TXT
HUOMAUTUS: Ole varovainen, kun muutat merkin tapauksessa, koska tämä muuttaa myös tiedostopääte.
johtopäätös
tämän opetusohjelman lukemisen jälkeen tiedostot pitäisi pystyä nimeämään uudelleen Linuxissa komennoilla mv
ja rename
.
Lue lisää Linux-komentojen käytöstä Linux Commands-Lunttilomakkeessamme.