Ghidul utilizatorului: Utilizați redenumirea Command On Linux
Ați încercat vreodată să utilizați comanda de redenumire pe Linux ? Doriți să luați legătura cu puterea de redenumire a fișierelor din lumea Linux și să vă oferiți mv - și dumneavoastră - o odihnă. Redenumirea este rapidă, flexibilă și destul de ușoară. Iată un ghid detaliat despre această putere a unei comenzi.
Ce merge greșit cu mv?
Nu s-a întâmplat nimic cu mv . Cu toate acestea, comanda face o treabă bună. De asemenea, îl puteți găsi pe toate distribuțiile Linux, în macOS și în alte sisteme de operare similare Unix. Cu toate acestea, este întotdeauna disponibil. Dar, cu siguranță, nu doriți o lopată, ci aveți nevoie de un buldozer.
Comanda mv are un scop în viață, și anume acela de a muta fișiere. Este un efect secundar sigur, care poate fi folosit pentru a muta un fișier mai vechi în noul fișier, cu un nume nou. Efectul este redenumirea fișierului, astfel încât să obțineți ceea ce doriți. Dar mv nu este un instrument de redenumire a fișierelor personalizate.
Cum să redenumiți un singur fișier cu mv

Dacă doriți să utilizați mv pentru a redenumi un fișier, apoi tastați mv, spațiu, numele fișierului, spațiul și noul nume pe care doriți să îl aibă fișierul. Apoi apăsați Enter.
De asemenea, puteți utiliza ls pentru a verifica dacă fișierul devine sau nu redenumit
mv renameCum să redenumiți mai multe fișiere cu mv
Lucrurile devin complexe după redenumirea mai multor fișiere. perl-rename nu are capacitatea de a face față redenumirii diferitelor fișiere. Trebuie să recurgeți la utilizarea unor trucuri utile Bash. Este bine dacă cunoașteți o linie de comandă de grad mediu, dar dificultatea de a redenumi diferite fișiere cu mv este ușor de utilizat mv pentru a redenumi un singur fișier.
Lucrurile escaladează instantaneu.
Să presupunem că aici este un director cu o mulțime de fișiere, de diferite tipuri. Unele fișiere au un .prog extensie. Dorim să redenumim acele fișiere din linia de comandă, astfel încât acestea să aibă un .prg extensie.
Haideți să aruncăm o privire asupra fișierelor.
renameIată o metodă de realizare care nu poate recurge la scrierea unui fișier script Bash.
renameA funcționat sau nu? Să verificăm fișierele și apoi să continuăm mai departe.
renameDeci, funcționează bine. Toți sunt .prg fișiere acum și nu există .prog fișiere din director.
Ce s-a întâmplat?
Ce a făcut de fapt comanda lungă? Hai să verificăm.
prenamePrima parte începe o buclă care va procesa fiecare .prog fișier din director, la rândul său.
O altă parte spune ce va face procesarea do . Folosește mv pentru a muta fiecare fișier în noul fișier. Noul nume de fișier va fi destul de similar cu numele fișierului original, cu excepția părții .prog. De asemenea, va fi utilizată extensia .prg.
Iată un mod ușor
Cel mai sigur. Iată redenumiți comanda.

Nu face parte din distribuția standard Linux, deci doriți să o instalați. De asemenea, are un nume diferit în diferite familii de Linux, dar toate funcționează într-un mod similar. Veți înlocui pur și simplu numele corect al comenzii în funcție de gustul Linux pe care îl utilizați.
În distribuțiile derivate din Debian sau Ubuntu pur și simplu instalați perl-rename ca aceasta:
*.progÎn distribuțiile derivate din RedHat sau Fedora pur și simplu instalați prenume ca aceasta. Amintiți-vă că p inițial, înseamnă Perl.
renamePentru a-l instala în Manjaro Linux utilizați următoarea comandă. Rețineți că comanda de redenumire este cunoscută sub numele de s.
.progFolosiți redenumirea comenzii -> Hai să încercăm încă unul
Aici vom folosi rename. Facem acest lucru, astfel încât să avem un set de fișiere .prog.
.prgHai să folosim comanda dată mai jos pentru a le redenumi. Vom verifica și cu eu sunt comandă dacă a funcționat sau nu. Dacă doriți să înlocuiți rename cu numele exact al comenzii pentru Linux dacă nu puteți utiliza Ubuntu sau un Linux derivat din Debian.
ls lsFuncționează bine, acum toate sunt fișiere .prg excluzând .prog fișiere rămase în director.
Ce s-a intamplat aici?
Să discutăm în trei părți.
În primul parte, veți vedea numele comenzii, rename (sau ls sau ls, pentru celelalte distribuții).
Al treilea ultimul partea este ^, ceea ce explică $ pentru a opera pe toate fișierele .prog.
al doilea partea explică munca pe care ne place să o facem pentru fiecare nume de fișier. | | + _ | înseamnă înlocuitor. Primul termen (^) este ceea ce ls va căuta în fiecare nume de fișier și al doilea termen (ls) este cu ce va fi înlocuit.
cel mai bun addon kodi chinezesc
Comanda partea de mijloc sau expresia centrală este o „expresie regulată” a Perl și este cea care oferă ls comandă fiabilitatea acestuia.
Modificarea altor părți ale unui nume de fișier
Am modificat extensiile de nume de fișier până acum, să schimbăm alte părți ale numelor de fișiere.
În director, există multe fișiere de cod sursă C. Toate numele fișierelor sunt prefixate cu argou_. Putem verifica acest lucru și cu s/.
y/Aici înlocuim toate aparițiile slang_ cu sl_. Formatul de comandă ne este destul de familiar. Modificăm doar termenul de căutare, termenul de înlocuire și tipul de fișier.
a-zAici căutăm fișiere .c și căutăm argou_. Ori de câte ori ați găsit argou_ într-un nume de fișier, acesta este înlocuit cu sl_.
De asemenea, puteți verifica rezultatul comenzii după repetarea comenzii A-Z de sus folosind aceiași parametri:
lsEliminarea unei părți dintr-un nume de fișier
De asemenea, putem șterge o parte a unui nume de fișier după ce înlocuim termenul de căutare cu nimic.
a-zPutem vizualiza și din eu sunt porunceste ca a noastra .c fișierele sunt completate cu sl_. Să lăsăm totul.
redenumiți comanda urmează același format ca cel menționat mai sus. Vom căuta fișiere .c. Termenul de căutare este sl_, dar nu există un termen de substituție. Două bare oblice „//” fără nimic între ele înseamnă un șir gol.
mv oldfile.txt newfile.txtpoate procesa pe rând fiecare fișier .c. De asemenea, caută sl_ în numele fișierului. Dacă l-ați găsit, puteți fi înlocuit cu nimic. Alternativ, termenul de căutare este eliminat.
O altă utilizare a
ls *.txtcomanda confirmă faptul că prefixul sl_ a fost șters din fiecare fișier .c.
Limita se modifică la anumite părți ale numelor de fișiere
Haideți să folosim
ls *.prog -lpentru a vizualiza fișierele care au șirul param în numele fișierului. Apoi vom folosi redenumiți comandă pentru a înlocui șirul prin parametrul șir. De asemenea, folosim eu sunt încă o dată pentru a vizualiza efectul redenumiți comanda a avut asupra acelor fișiere.
for f in *.prog; do mv -- '$f' '${f%.prog}.prg' ls *.pr*
for f in *.prog; do mv -- '$f' '${f%.prog}.prg'Veți vedea apoi patru fișiere care au Stop în numele lor de fișier. param.c, param_one.c și param_two.c au toate Stop la începând de numele lor. al treilea_param.c are Stop la ultimul a numelui său, chiar înainte de extensie.
Puteți căuta redenumiți comanda pentru param oriunde în numele fișierului. Apoi îl puteți înlocui cu parametru în toate cazurile.
O altă utilizare a eu sunt comanda ne arată că ceea ce sa întâmplat exact. Dacă Stop a fost la începutul sau la sfârșitul numelui fișierului. De asemenea, îl puteți înlocui cu un parametru.
Putem folosi metacaracterele lui Perl pentru a purifica comportamentul expresiei centrale. Metacaracterele sunt semnele care reprezintă secvențe sau poziții ale personajelor. De exemplu,
sudo apt-get install renameînseamnă începutul unui șir, (.) înseamnă orice caracter unic (în afară de un caracter de linie nouă),
sudo dnf install prenameînseamnă sfârșitul unui șir.
De asemenea, folosim începutul metacaracterului șirului (
sudo pacman -Syu perl-rename) pentru a ne limita căutarea la începutul numelor de fișiere.
ls *.prog
rename 's/.prog/.prg/' *.prog
ls *.pr*
ls sl*.c
Fișierele pe care le-am redenumit sunt listate anterior. De asemenea, putem vedea parametrul șirului este la începutul a 3 nume de fișiere și este situat la sfârșitul unuia dintre numele de fișiere.
Al nostru redenumiți comanda folosește începutul liniei metacaracter (^) înainte de parametrul termenului de căutare. Acesta explică să luați în considerare doar termenul de căutare pentru a găsi dacă se află la începutul numelui fișierului. Parametrul șirului de căutare va fi evitat dacă se află în altă parte din numele fișierului.
Privind cu
rename 's/slang_/sl_' *.c, putem vedea apoi că numele fișierului are parametru la ultimul din numele fișierului nu a fost modificat. Dar cele trei nume de fișiere având parametru la începând dintre numele lor cu șir de căutare înlocuit cu valoarea termenului substitut.
redenumiți puterea stă în puterea lui Perl.
Privind cu grupări
Iată cazul în care probabil aveți fișiere cu aceleași șiruri în numele lor. Nu seamănă exact cu aceleași șiruri, așa că trebuie doar să căutați și substituția nu poate funcționa aici.
În acest exemplu folosim
ls sl*.cpentru a vedea ce fișiere avem care începe cu str. De asemenea, există două dintre ele, string.c și strangle.c. De asemenea, putem redenumi ambele șiruri după utilizarea unei metode cunoscute sub numele de grupare.
Expresia de mijloc a redenumiți comanda va căuta șiruri în numele fișierelor care au secvența de caractere stri sau stra. Aici aceste secvențe sunt urmate de ng. Alternativ, termenul nostru de căutare va căuta șir și ciudat. Termenul de substituție este bang.
ls *.c rename 's/sl_//' *.c ls *.c
ls *param*
rename 's/param/parameter' *.c
După utilizarea
ls *param*altă dată confirmă că string.c a devenit un bang.c și strangle.c este acum bangle.c.
Utilizați redenumiți Comanda cu traduceri
redenumiți comanda efectuează toate acțiunile pe numele de fișiere cunoscute sub numele de traduceri. Iată un exemplu de traducere care forțează un set de nume de fișiere cu majuscule.
În redenumiți comanda dată mai jos notează că nu folosim un
ls *param*.cpentru a începe expresia de mijloc, folosim
rename 's/^parameter/value/' *.c. Acesta explică faptul că comanda nu poate efectua o înlocuire; efectuăm o traducere.
Termenul
ls *param*.ceste o expresie Perl. Înseamnă că toate caracterele mici din secvența de la a la z. Dar, termenul
ls value*.creprezintă toate literele majuscule din secvența de la A la Z.
Expresia de mijloc din această comandă poate fi parafrazată ca și când oricare dintre literele mici de la a la z se găsesc în numele fișierului. Le înlocuiește folosind caracterele corespunzătoare din ordinea caracterelor majuscule de la A la Z.
Dacă doriți să forțați numele majore ale fișierelor .prg cu majuscule, pur și simplu utilizați această comandă:
redenumiți „y / a-z / A-Z /” * .prg
ls str*.c
Comanda
rename 's/(stri|stra)ng/bang/' *.cafișează-ne că toate .prg fișierele de extensii sunt acum cu majuscule. De asemenea, pentru a fi strict exacți, nu sunt .prg mai multe fișiere. Ei bine, sunt fișiere .PRG. Asigurați-vă că Linux este sensibil la majuscule și minuscule.
De asemenea, putem inversa ultima comandă după revenirea la poziția
ls ban*.cși termeni A-Z în expresia de mijloc.
redenumiți „y / A-Z / a-z /” * .PRG
ls * .prg
Nu poți învăța Perl în cinci minute
Preluarea cu Perl este un timp bine petrecut. Dar pentru a începe să utilizați capacitățile de economisire a timpului redenumiți comandă, nu vedeți că aveți deloc cunoștințe Perl pentru a profita de mari avantaje în putere.
Concluzie:
Iată totul despre „Utilizați redenumiți Command On Linux”. Ce părere aveți despre asta? Dacă doriți să împărtășiți orice altă metodă sau sfaturi cu privire la articol, anunțați-ne mai jos. Pentru întrebări și întrebări suplimentare, anunțați-ne în secțiunea de comentarii de mai jos!
Citește și:


