Kuidas kasutada Linuxis käsku ümber nimetada
Tutvuge Linuxi maailma jõujaama ümbernimetamise failidega ja andke mv
- ja ennast - puhata. Nimeta ümber
on paindlik, kiire ja mõnikord isegi lihtsam. Siin on selle käsu võimla õpetus.
Mis on mv-ga valesti?
Selles pole midagi halba mv
. Käsk teeb suurepärast tööd ja seda leidub kõigis Linuxi distributsioonides, macOS-is ja teistes Unixi-laadsetes operatsioonisüsteemides. Nii et see on alati saadaval. Kuid mõnikord on vaja ainult buldooserit, mitte kühvlit.
The mv
käsul on elus eesmärk ja see on failide teisaldamine. On hea meel, et seda saab kasutada olemasoleva faili teisaldamiseks sisse uus fail uue nimega. Netoefekt on faili ümbernimetamine, nii et saame selle, mida tahame. Aga mv
ei ole spetsiaalne failide ümbernimetamise tööriist.
Ühe faili ümbernimetamine mv-ga
Kasutada mv
failitüübi ümbernimetamiseks mv
, tühik, faili nimi, tühik ja uus nimi, mida soovite failil kasutada. Seejärel vajutage sisestusklahvi.
Sa võid kasutadals
faili ümbernimetamiseks.
mv oldfile.txt newfile.txt
ls * .txt
Mitme faili ümbernimetamine mv-ga
Asjad muutuvad keerulisemaks, kui soovite mitu faili ümber nimetada. mv
ei saa hakkama mitme faili ümbernimetamisega. Peate kasutama mõnda uhket Bashi trikki. See on hea, kui teate mõnda keskmise klassi käsurea fu, kuid mitme faili ümbernimetamise keerukus mv
seisab teravas kontrastis kasutamise lihtsusega mv
ühe faili ümbernimetamiseks.
Asjad eskaleeruvad kiiresti.
Oletame, et meil on kataloog, kus on erinevaid faile, erinevat tüüpi. Mõnel neist failidest on laiend .prog. Soovime need käsureal ümber nimetada, nii et neil oleks laiend “.prg”.
Kuidas me rabeleme mv
meie jaoks seda tegema? Vaatame faile.
ls * .prog -l
Selleks on üks viis, mis ei kasuta tegeliku Bashi skriptifaili kirjutamist.
f jaoks * .prog; tee mv - "$ f" "$ {f% .prog} .prg"
Kas see töötab? Kontrollime faile ja näeme.
ls * .pr *
Nii, jah, see töötas. Need on nüüd kõik .prg-failid ja kataloogis pole ühtegi .prog-faili.
Mis just juhtus?
Mida see pikk käsk tegelikult tegi? Jagame selle laiali.
f jaoks * .prog; tee mv - "$ f" "$ {f% .prog} .prg"
Esimene osa käivitab tsükli, mis hakkab omakorda töötlema kõiki kataloogis olevaid .prog-faile.
Järgmises osas öeldakse, mida töötlemine tähendab tegema. See kasutabmv
iga faili teisaldamiseks uude faili. Uut faili hakatakse nimetama algse faili nimega, välja arvatud osa .prog. Selle asemel kasutatakse uut .prg laiendit.
Peab olema lihtsam viis
Kindlasti. See on ümber nimetada
käsk.
ümber nimetada
ei kuulu tavapärase Linuxi jaotuse hulka, seega peate selle installima. Samuti on sellel erinevates Linuxi perekondades erinev nimi, kuid need kõik töötavad samamoodi. Peate lihtsalt asendama sobiva käsunime vastavalt kasutatavale Linuxi maitsele.
installitud Ubuntu ja Debiani tuletatud jaotustes ümber nimetada
nagu nii:
sudo apt-get installi ümbernimetamine
Fedora ja RedHati tuletatud jaotustes installite eesnimi
nagu nii. Pange tähele algust "p", mis tähistab Perli.
sudo dnf installi eesnimi
Manjaro Linuxi installimiseks kasutage järgmist käsku. Pange tähele, et nimetatakse ümbernimetamise käsku perl-ümbernimetamine
.
sudo pacman -Syu perl-ümbernimetamine
Teeme seda uuesti
Ja seekord me kasutame ümber nimetada
. Keerame kella tagasi, et meil oleks komplekt .prog-faile.
ls * .prog
Kasutame nüüd nende ümbernimetamiseks järgmist käsku. Seejärel kontrollime ls
kas see töötas. Ärge unustage asendada ümber nimetada
oma Linuxi jaoks sobiva käsunimega, kui te ei kasuta Ubuntu ega Debiani tuletatud Linuxi.
nimetage 's / .prog / .prg /' * .prog ümber
ls * .pr *
See töötas, need on nüüd kõik .prg-failid ja kataloogi pole jäänud .prog-faile.
Mis juhtus see TIme?
Selgitame seda maagiat kolmes osas.
The kõigepealt osa on käsu nimi, ümber nimetada
(või eesnimi
või perl-ümbernimetamine
(muude jaotuste kohta).
The viimane osa on * .prog
, mis ütleb ümber nimetada
kõigi “.prog” failide kasutamiseks.
The keskel osa määratleb töö, mida soovime teha iga failinime puhul. The s
tähendab asendajat. Esimene termin (.prog
) on mis ümber nimetada
otsib igast failinimest ja teisest terminist (.prg
) on see, millega see asendatakse.
Käsu keskosa ehk keskväljend on Perli ‘regulaarne avaldis’ ja see annabki ümber nimetada
käsk selle paindlikkust.
Failinime muude osade muutmine
Oleme siiani muutnud failinimede laiendusi, muudame failinimede teisi osi.
Kataloogis on palju C-lähtekoodi faile. Kõigile failinimedele on lisatud eesliit “slang_”. Me saame seda kontrollida ls
.
ls sl * .c
Asendame kõik slängi_ esinemised sõnaga „sl_”. Käsu formaat on meile juba tuttav. Muudame lihtsalt otsinguterminit, asendusterminit ja failitüüpi.
nimetage 's / slang_ / sl_' * .c ümber
Seekord otsime „.c” faile ja otsime „slang_”. Kui failinimes leitakse „slang_”, asendatakse see „sl_” -ga.
Selle käsu tulemust saame kontrollida, korrates ls
käsk ülalt samade parameetritega:
ls sl * .c
Failinime osa kustutamine
Saame osa failinimest eemaldada, asendades otsingutermini mitte millegagi.
ls * .c
nimetage 's / sl _ //' * .c ümber
ls * .c
Näeme ls
käsk, et kõik meie .c-failid oleksid eeltäidetud tähega “sl_”. Vabaneme sellest täielikult.
The ümber nimetada
käsk järgib sama vormingut nagu varem. Otsime .c-faile. Otsingutermin on “sl_”, kuid asendusterminit pole. Kaks tagasilööki, mille vahel pole midagi, ei tähenda midagi, tühi string.
ümber nimetada
töötleb iga “.c” faili kordamööda. See otsib failinimes sõna „sl_”. Kui see leitakse, ei asendata seda millegagi. Teisisõnu, otsingutermin kustutatakse.
Teise kasutamise ls
käsk kinnitab, et prefiks “sl_” on eemaldatud igast “.c” failist.
Piirake failinimede teatud osade muudatusi
Kasutagem ls
vaadata faile, mille failinimes on string “param”. Siis me kasutame ümber nimetada
selle stringi asendamiseks stringiga “parameeter”. Kasutame ls
veel kord, et näha mõju ümber nimetada
käsk on neil failidel olnud.
ls * param *
ümber nimetada 's / param / parametri' * .c
ls * param *
Leitakse neli faili, mille failinimes on „param”. param.c, param_one.c ja param_two.c on kõigil parameetrid algus nende nimest. third_param.c-l on parameeter lõpp nime vahetult enne laiendust.
The ümber nimetada
käsk otsib failinimes kõikjal sõna "param" ja asendab selle kõigil juhtudel parameetriga.
Teise kasutamisels
käsk näitab meile, et just nii on juhtunud. Olenemata sellest, kas „param” oli failinime alguses või lõpus, on see asendatud parameetriga.
Keskmise avaldise käitumise täpsustamiseks võime kasutada Perli metamärke. Metamärgid on sümbolid, mis tähistavad tähtede positsioone või järjestusi. Näiteks, ^
tähendab "stringi algust" $
tähendab "stringi lõppu" ja .
tähendab mis tahes üksikut tähemärki (välja arvatud uue rea tähemärk).
Kasutame stringi metamärgi algust ( ^
), et meie otsing piirduks failinimede algusega.
ls * param * .c
nimetage 's / ^ parameeter / väärtus /' * .c ümber
ls * param * .c
ls väärtus * .c
Varem ümbernimetatud failid on loetletud ja näeme, et string "parameeter" on kolme failinime alguses ja see on ühe failinime lõpus.
Meie ümber nimetada
käsk kasutab rea algust(^
) metamärk enne otsinguterminit „parameeter“. See ütleb ümber nimetada
lugeda otsitavat terminit leituks ainult siis, kui see on failinime alguses. Otsingu stringi “parameeter” eiratakse, kui see asub kuskil mujal failinimes.
Kontrollimine ls
, näeme, et failinimi, millel oli parameeter lõpp failinimest ei ole muudetud, kuid kolm failinime, millel oli parameeter algus nende nimedest on otsing string asendatud asendusterminiga „väärtus”.
Võimsus ümber nimetada
peitub Perli võimuses. Teie käsutuses on kogu Perli võim.
Rühmitustega otsimine
ümber nimetada
on oma varrukas veel rohkem trikke teinud. Vaatleme juhtumit, kus teie nimedes võib olla sarnaste stringidega faile. Need pole täpselt samad stringid, nii et lihtne otsimine ja asendamine siin ei toimi.
Selles näites kasutame ls
et kontrollida, millised meil olevad failid algavad tähega “str”. Neid on kaks, string.c ja strangle.c. Me võime mõlemad stringid korraga ümber nimetada, kasutades tehnikat, mida nimetatakse grupeerimiseks.
Selle keskne väljendus ümber nimetada
käsk otsib failinimedes stringe, mille tähemärkide järjestus on "stri" või "Stra", kus neile järjestustele järgneb kohe "ng". Teisisõnu, meie otsingutermin otsib sõna "string" ja “Kummaline”. Asendustermin on “pauk”.
ls str * .c
nimetage 's / (stri | stra) ng / bang /' * .c ümber
ls keelake * .c
Kasutaminels
teine kord kinnitab, et string.c on muutunud bang.c ja kägistamine.c on nüüd bangle.c.
Tõlgete kasutamine ümbernimetamisega
The ümber nimetada
käsk saab toiminguid teha failinimedega, mida nimetatakse tõlgeteks. Tõlke lihtne näide oleks failinimede komplekti sundimine suurtähtedesse.
Aastal ümber nimetada
all olev käsk märkab, et me ei kasuta s /
keskse avaldise alustamiseks kasutame jah /
. See ütlebümber nimetada
me ei tee asendust; teeme tõlget.
The a-z
termin on Perli avaldis, mis tähendab kõiki väikseid tähti järjestuses a kuni z. Samamoodi on A-Z
termin tähistab kõiki suuri tähti järjestuses A kuni Z.
Selle käsu keskse avaldise võiks parafraseerida järgmiselt: "Kui failinimes leitakse mõni väiketäht a-st z-ni, asendage need vastavate tähtedega suurtähtede järjestusest A-st Z-ni".
Kõigi “.prg” -failide nimede sundimiseks suurtähtedeks kasutage seda käsku:
nimetage ümber y / a-z / A-Z / ’* .prg
ls * .PRG
The ls
käsk näitab meile, et kõik .prg-failinimed on nüüd suurtähtedega. Tegelikult pole need täpse täpsuse huvides enam ".prg" -failid. Need on .PRG-failid. Linux on tõstutundlik.
Selle viimase käsu saame ümber pöörata, muutes a-z
ja A-Z
terminid keskses väljendis.
nimetage ümber y / A-Z / a-z / ’* .PRG
ls * .prg
Sa (ei | tee) ei õpi Perli viie minutiga
Perliga tutvumine on hästi kulutatud aeg. Kuid selleks, et hakata kasutama ajasäästlikke võimalusi ümber nimetada
käsu korral ei pea teil olema palju Perli teadmisi, et saada võimust, lihtsusest ja ajast suurt kasu.