Introducere

Linux oferă mai multe opțiuni pentru redenumirea fișierelor, inclusiv utilizarea GUI și a mai multor comenzi terminale dedicate. Acest lucru face relativ ușor redenumirea fișierelor individuale, dar poate fi dificil să redenumiți mai multe fișiere simultan.

în acest tutorial, vom trece peste diferite comenzi pe care le puteți utiliza în terminalul Linux pentru a redenumi fișierele în Linux.

cum să redenumiți fișierele în Linux

cerințe preliminare

  • un sistem care rulează o distribuție Linux
  • un cont cu privilegii sudo
  • acces la fereastra terminalului/linia de comandă
  • acces la un editor de text, cum ar fi vim sau Nano

Redenumiți fișierele cu comanda mv

Linux mvcomanda (mutare) este utilizată pentru a muta fișiere și directoare de la terminal. Acesta utilizează următoarea sintaxă:

mv 

dacă specificați un director ca destinație atunci când utilizați comanda mv, fișierul sursă se mută în acel director. Dacă destinația este un alt nume de fișier, comanda mv redenumește fișierul sursă la acel nume.

notă: Aflați mai multe despre utilizarea comenzii mv în ghidul nostru pentru mutarea directoarelor în Linux.

redenumiți un singur fișier cu comanda mv

folosind comanda mv cu sintaxa implicită vă permite să redenumiți un singur fișier:

mv 

de exemplu, dacă dorim să redenumim exemplul1.txt în exemplu2.txt, ne-ar folosi:

mv example1.txt example2.txt

deoarece nu există ieșire dacă comanda are succes, folosim comanda ls pentru a verifica dacă numele este schimbat:

ls -l
redenumirea unui singur fișier utilizând comanda mv

redenumiți mai multe fișiere cu comanda mv

pe cont propriu, comanda mv redenumește un singur fișier. Cu toate acestea, combinarea acestuia cu alte comenzi vă permite să redenumiți mai multe fișiere în același timp.

o metodă este de a utiliza comanda find pentru a selecta mai multe fișiere cu un nume similar, apoi utilizați comanda mv pentru a le redenumi:

find . -depth -name "" -exec sh -c 'f="{}"; mv -- "$f" "${f%}"' \;

folosind această sintaxă, comanda find definește un element al numelui fișierului curent ca parametru de căutare. Apoi, -exec execută comanda mv pentru orice fișiere care se potrivesc căutării, schimbându-le numele de fișiere curente în cel nou.

de exemplu, dacă avem exemplul1.txt, exemplu2.txt, și exemplu3.txt și doriți să modificați extensia la .pdf:

find . -depth -name "*.txt" -exec sh -c 'f="{}"; mv -- "$f" "${f%.txt}.pdf"' \;
redenumirea mai multor fișiere utilizând comenzile find și mv

o altă metodă este de a utiliza comanda mv ca parte a unei bucle <strong>for</strong> într-un script bash.

folosind același exemplu, începeți prin crearea și deschiderea unui fișier script bash folosind un editor de text, cum ar fi Nano:

sudo nano rename_files.sh

notă: Aflați mai multe despre utilizarea scripturilor bash pentru a gestiona fișiere și directoare în Linux.

adăugați următoarele linii la script:

#!/bin/bashfor f in *.txt; do mv -- "$f" "${f%.txt}.pdf"done

în scenariul de mai sus:

  • prima linie instruiește scriptul să caute toate fișierele din directorul curent care se termină cu .txt.
  • a doua linie utilizează comanda mv pe fiecare fișier găsit pentru a înlocui .extensie txt cu .pdf.
  • a treia linie încheie segmentul de buclă.

apăsați Ctrl+X, apoi tastați Y și apăsați Enter pentru a salva modificările scriptului și a ieși.

utilizați comanda sh pentru a executa scriptul:

sh rename_files.sh
redenumirea mai multor fișiere utilizând un script bash

redenumiți fișierul cu comanda redenumire

comanda rename este utilizată pentru a redenumi mai multe fișiere sau directoare în Linux. Oferă mai multe funcții decât comanda mv, dar poate fi mai dificil de utilizat, deoarece necesită cunoștințe de bază despre expresiile Perl.

cum se instalează comanda redenumire

pe multe distribuții Linux, comanda rename nu este disponibilă în mod implicit. Dacă sistemul dvs. lipsește comanda rename, instalați-l cu:

  • Pentru Ubuntu și Debian, utilizați sudo apt install rename
  • pentru CentOS și Fedora, utilizați sudo yum install prename
  • pentru Arch Linux, utilizați sudo pacman -S redenumiți

redenumiți sintaxa comenzii și opțiunile

există trei tipuri de expresii regulate Perl: și traduceți. Comanda rename folosește expresii de înlocuire și traducere pentru a schimba numele fișierelor și directoarelor.

expresii substitutive înlocuiți o parte a numelui fișierului cu un șir diferit. Ei folosesc următoarea sintaxă:

rename 's///' 

cu această sintaxă, comanda redenumește fișierul înlocuind prima apariție a elementului de nume de fișier cu înlocuirea. În comanda de mai sus:

  • rename: invocă comanda redenumire.
  • : oferă un argument opțional care schimbă modul în care comanda execută.
  • s: indică o expresie substitut.
  • : specifică partea din numele fișierului pe care doriți să o înlocuiți.
  • : specifică un înlocuitor pentru partea din numele fișierului curent.
  • : definește fișierul pe care doriți să îl redenumiți.

o expresie translate traduce un șir de caractere în altul, caracter pentru caracter. Acest tip de Expresie utilizează următoarea sintaxă:

rename 'y///' 

un exemplu de comandă rename folosind o expresie de traducere:

rename 'y/abc/xyz/'

în acest exemplu, fiecare caracter a din numele fișierului este înlocuit cu un x, fiecare b cu un y și fiecare c cu un z.

comanda redenumire utilizează următoarele opțiuni:

  • -a: înlocuiește toate aparițiile elementului nume de fișier în loc de doar primul.
  • -f: Forțează o suprascriere a fișierelor existente.
  • -h: Afișează textul de ajutor.
  • -i: afișează o solicitare înainte de a suprascrie fișierele existente.
  • -l: înlocuiește Ultima apariție a elementului nume de fișier în loc de primul.
  • -n: efectuează o alergare uscată, fără a face modificări permanente. Cel mai bine combinat cu ieșirea verbose (-v).
  • -s: Redenumește ținta în loc de legătura simbolică.
  • -v: afișează o versiune detaliată a ieșirii.
  • -V: Afișează versiunea de comandă.

redenumiți exemplele de comandă

1. Schimbați extensia de fișier

revenind la ultimul nostru exemplu, pentru a schimba extensia de fișier din .txt la .pdf, utilizare:

rename -v 's/.txt/.pdf/' *.txt
utilizarea comenzii Redenumire pentru a înlocui extensia de fișier

2. Înlocuirea unei părți a unui nume de fișier

înlocuirea unei părți diferite a numelui de fișier urmează aceeași sintaxă. Pentru a redenumi exemplul1.txt, exemplu2.txt, și exemplu3.txt la test1.txt, test2.txt și text3.txt, utilizare:

rename -v 's/example/test/' *.txt
redenumirea mai multor fișiere utilizând comanda redenumire

3. Ștergerea unei părți a unui nume de fișier

opțiunea rename vă permite, de asemenea, să ștergeți o parte a numelui de fișier omițând partea de înlocuire a expresiei. De exemplu, dacă vrem să scurtăm exemplul în ex:

rename -v 's/ample//' *.txt
eliminarea unei părți a numelui fișierului utilizând comanda redenumire

4. Redenumiți fișierele cu nume similare

o altă utilizare pentru opțiunea rename este redenumirea fișierelor cu nume similare. De exemplu, dacă dorim să redenumim fișierele cu exemplu și eșantion în numele lor pentru a testa:

rename -v 's/(ex|s)ample/test/' *.txt
redenumirea mai multor fișiere cu nume similare utilizând comanda redenumire

5. Redenumiți fișierele caracter cu caracter

comanda rename vă permite, de asemenea, să utilizați expresii de traducere pentru a redenumi fișierele pe bază de caractere. De exemplu, dacă doriți să redenumiți mai multe fișiere numite exemplu fișier înlocuind spațiul gol cu un subliniere (_):

rename -v 'y/ /\_/' *.txt
eliminarea spațiilor goale din numele fișierelor utilizând comanda redenumire

6. Conversia caracterelor minuscule

pentru a converti caracterele minuscule din numele fișierelor în caractere majuscule, utilizați:

rename -v 'y/a-z/A-Z/' *.txt
conversia numelor de fișiere de la litere mici la majuscule utilizând comanda redenumire

7. Conversia caracterelor majuscule

reversul funcționează și dacă comutăm ordinea caracterelor majuscule și minuscule din Expresie:

rename -v 'y/A-Z/a-z/' *.TXT
conversia numelor de fișiere din majuscule în minuscule utilizând comanda redenumire

Notă: aveți grijă când schimbați cazul caracterelor, deoarece aceasta modifică și extensia fișierului.

concluzie

după ce ați citit acest tutorial, ar trebui să puteți redenumi fișierele folosind comenzile mv și rename în Linux.

Aflați mai multe despre utilizarea comenzilor Linux în foaia noastră de comenzi Linux.

Lasă un răspuns

Adresa ta de email nu va fi publicată.