introduktion

Linuk giver flere muligheder for omdøbning af filer, herunder brug af GUI og flere dedikerede terminalkommandoer. Dette gør det relativt nemt at omdøbe individuelle filer, men det kan være udfordrende at omdøbe flere filer på en gang.

i denne tutorial gennemgår vi forskellige kommandoer, du kan bruge i linukterminalen til at omdøbe filer i Linuk.

sådan omdøbes filer i <url>

forudsætninger

  • et system, der kører en distribution
  • en konto med sudo-privilegier
  • adgang til terminalvinduet/kommandolinjen
  • adgang til en teksteditor, såsom Vim eller Nano

Omdøb filer med mv-kommandoen

kommandoen mv (Flyt) bruges til at flytte filer og mapper fra terminalen. Det bruger følgende syntaks:

mv 

hvis du angiver en mappe som destination, når du bruger kommandoen mv, flyttes kildefilen til den pågældende mappe. Hvis destinationen er et andet filnavn, omdøber kommandoen mv kildefilen til det navn i stedet.

Bemærk: få mere at vide om at bruge kommandoen mv i vores guide til flytning af mapper.

Omdøb en enkelt fil med mv-kommandoen

ved hjælp af kommandoen mv med dens standardsyntaks kan du omdøbe en enkelt fil:

mv 

for eksempel, hvis vi vil omdøbe eksempel1.tekst ind i eksempel2.TDC, vi ville bruge:

mv example1.txt example2.txt

da der ikke er nogen output, hvis kommandoen er vellykket, bruger vi kommandoen ls til at kontrollere, om navnet er ændret:

ls -l
omdøbning af en enkelt fil ved hjælp af mv-kommandoen

Omdøb flere filer med mv-kommandoen

på egen hånd omdøber kommandoen mv en enkelt fil. Men ved at kombinere det med andre kommandoer kan du omdøbe flere filer på samme tid.

en metode er at bruge kommandoen find til at vælge flere filer med et lignende navn og derefter bruge kommandoen mv til at omdøbe dem:

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

ved hjælp af denne syntaks definerer kommandoen find et element i det aktuelle filnavn som søgeparameter. Dernæst -exec udfører kommandoen mv på alle filer, der matcher søgningen, og ændrer deres nuværende filnavne til den nye.

for eksempel, hvis vi har eksempel1.tekst, eksempel2.tekst og eksempel3.vil ændre udvidelsen til .pdf:

find . -depth -name "*.txt" -exec sh -c 'f="{}"; mv -- "$f" "${f%.txt}.pdf"' \;
omdøbning af flere filer ved hjælp af kommandoerne find og mv

en anden metode er at bruge kommandoen mvsom en del af en <strong>for</strong> loop i et bash-script.

brug det samme eksempel til at starte med at oprette og åbne en bash-scriptfil ved hjælp af en teksteditor som Nano:

sudo nano rename_files.sh

Bemærk: få mere at vide om at bruge bash-scripts til at administrere filer og mapper.

tilføj følgende linjer til scriptet:

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

i scriptet ovenfor:

  • den første linje instruerer scriptet til at søge efter alle filerne i den aktuelle mappe, der slutter med .TST.
  • den anden linje bruger kommandoen mv på hver fil, der findes til at erstatte .tekst udvidelse med .pdf.
  • den tredje linje slutter sløjfesegmentet.

tryk på Ctrl+H, skriv derefter Y og tryk på Enter for at gemme ændringerne i scriptet og afslutte.

brug kommandoen sh til at udføre scriptet:

sh rename_files.sh
omdøbning af flere filer ved hjælp af et bash-script

Omdøb fil med kommandoen Omdøb

kommandoen rename bruges til at omdøbe flere filer eller mapper. Det tilbyder flere funktioner end kommandoen mv, men kan være mere udfordrende at bruge, da det kræver grundlæggende viden om Perl-udtryk.

Sådan installeres kommandoen Omdøb

på mange distributioner er kommandoen rename ikke tilgængelig som standard. Hvis dit system mangler kommandoen rename, skal du installere den med:

  • til Ubuntu og Debian, brug sudo apt install rename
  • til CentOS og Fedora, brug sudo yum install prename
  • til Arch Linuks, brug sudo pacman -S Omdøb

Omdøb Kommandosyntaks og indstillinger

der er tre typer Perl regulære udtryk: match, erstatning og oversættelse. Kommandoen rename bruger udtryk for erstatning og oversættelse til at ændre fil-og katalognavne.

Erstatningsudtryk erstatter en del af filnavnet med en anden streng. De bruger følgende syntaks:

rename 's///' 

med denne syntaks omdøber kommandoen filen ved at erstatte den første forekomst af filnavnselementet med udskiftningen. I kommandoen ovenfor:

  • rename: påkalder kommandoen Omdøb.
  • : indeholder et valgfrit argument, der ændrer den måde, kommandoen udføres på.
  • s: angiver et erstatningsudtryk.
  • : angiver den del af filnavnet, du vil erstatte.
  • : angiver en erstatning for den del af det aktuelle filnavn.
  • : definerer den fil, du vil omdøbe.

et oversæt udtryk oversætter en streng af tegn til en anden, tegn for tegn. Denne type udtryk bruger følgende syntaks:

rename 'y///' 

et eksempel på en rename kommando ved hjælp af et oversæt udtryk:

rename 'y/abc/xyz/'

i dette eksempel erstattes hvert a-tegn i filnavnet med et h, hvert b med et y og hvert c med et å.

kommandoen Omdøb bruger følgende indstillinger:

  • -a: erstatter alle forekomster af filnavneelementet i stedet for kun den første.
  • -f: Tvinger en overskrivning af eksisterende filer.
  • -h: viser hjælpeteksten.
  • -i: viser en prompt, før du overskriver eksisterende filer.
  • -l: erstatter den sidste forekomst af filnavnselementet i stedet for den første.
  • -n: udfører et tørt løb, der ikke foretager permanente ændringer. Bedst kombineret med verbose output (-v).
  • -s: omdøber målet i stedet for symlink.
  • -v: viser en detaljeret version af output.
  • -V: viser kommandoen version.

Omdøb Kommandoeksempler

1. Skift filtypenavn

vender tilbage til vores sidste eksempel for at ændre filtypenavnet fra .tekst til .pdf, brug:

rename -v 's/.txt/.pdf/' *.txt
brug kommandoen Omdøb til at erstatte filtypen

2. Udskiftning af en del af et filnavn

udskiftning af en anden del af filnavnet følger den samme syntaks. For at omdøbe eksempel1.tekst, eksempel2.tekst og eksempel3.tekst til test1.test2.tekst og tekst3.tekst, brug:

rename -v 's/example/test/' *.txt
omdøbning af flere filer ved hjælp af kommandoen Omdøb

3. Slet en del af et filnavn

indstillingen rename giver dig også mulighed for at slette en del af filnavnet ved at udelade erstatningsdelen af udtrykket. For eksempel, hvis vi vil forkorte eksempel til eks:

rename -v 's/ample//' *.txt
fjernelse af en del af filnavnet ved hjælp af kommandoen Omdøb

4. Omdøb filer med lignende navne

en anden anvendelse til rename mulighed er at omdøbe filer med lignende navne. For eksempel, hvis vi vil omdøbe filer med eksempel og prøve i deres navn for at teste:

rename -v 's/(ex|s)ample/test/' *.txt
omdøbning af flere filer med lignende navne ved hjælp af kommandoen Omdøb

5. Omdøb filer tegn for tegn

kommandoen rename giver dig også mulighed for at bruge Oversæt udtryk til at omdøbe filer på tegn for tegn. For eksempel, hvis du vil omdøbe flere filer med navnet eksempelfil ved at erstatte det tomme rum med en understregning (_):

rename -v 'y/ /\_/' *.txt
fjernelse af tomme mellemrum fra filnavne ved hjælp af kommandoen Omdøb

6. Konverter små bogstaver

for at konvertere små bogstaver i filnavne til store bogstaver skal du bruge:

rename -v 'y/a-z/A-Z/' *.txt
konvertering af filnavne fra små til store bogstaver ved hjælp af kommandoen Omdøb

7. Konverter store bogstaver

omvendt fungerer også, hvis vi skifter rækkefølgen af store og små bogstaver i udtrykket:

rename -v 'y/A-Z/a-z/' *.TXT
konvertering af filnavne fra store til små bogstaver ved hjælp af kommandoen Omdøb

Bemærk: Vær forsigtig, når du ændrer tegnsagen, da dette også ændrer filtypen.

konklusion

efter at have læst denne tutorial, skal du være i stand til at omdøbe filer ved hjælp af kommandoerne mv og rename.

få mere at vide om brug af kommandoer i Cheat Sheet.

Skriv et svar

Din e-mailadresse vil ikke blive publiceret.