Omdirigering av filer är inte en särskilt avancerad operation. så länge det är gjort på ett litet antal filer, behöver det vanligtvis inte specialverktyg. Men när det finns en hel mapp med bilder från förra årets semester som väntar på att byta namn, kan det vara klokt att överväga några tidsbesparande tricks eller appar.

Det finns två generella tillvägagångssätt för att byta namn på batchfil: det kan göras antingen via kommandoradsgränssnittet eller genom att använda en fristående applikation. Linux-användare vet redan hur kraftfull CLI kan vara, så det borde inte vara överraskande att det finns flera kommandon för filnamn.

Relaterat : 15 av de bästa gratis spelen för Linux

Byta namn på filer med kommandot "mv"

Ett enkelt sätt att byta namn på filer och mappar är med kommandot mv (förkortat från "flytta"). Dess främsta syfte är att flytta filer och mappar, men det kan också byt namn på dem, eftersom akten att byta namn på en fil tolkas av filsystemet som att flytta det från ett namn till ett annat.

Följande syntax används för att byta namn på filer med mv:

 mv (alternativ) filnamn1.ext filnamn2.ext 

där "filename1.ext" är det ursprungliga "gamla" namnet på filen och "filename2.ext" det nya namnet.

Samma mönster fungerar för att byta namn på mappen. Om filerna inte finns i den aktuella aktiva mappen måste deras fullständiga sökväg anges:

 mv /home/user/Files/filename1.ext/home/user/Files/filename2.ext 

Observera att kommandot mv kräver skrivbehörighet för mappen som innehåller filerna. För systemfiler och mappar måste användaren få root-behörigheter för att byta namn på filer genom att lägga ut mv med sudo eller su . Ett extra skyddslag tillhandahålls av alternativet "-i" (interaktivt), vilket ber användaren att bekräfta filnamnet innan det faktiskt tillämpas.

Det finns också -v (verbose) alternativet som listar alla ändringar som gjorts av mv . Alternativ skrivs efter mv men före filnamnen.

Använd kommandot "Rename"

Detta kommando är något mer avancerat än mv eftersom det kräver kunskap om, eller åtminstone en grundläggande förtrogenhet med reguljära uttryck. Det kan låta läskigt, men ge inte upp om att rename ännu - det kan användas för ren batch omdirigering helt enkelt genom att följa handledning som den här.

rename förny rename ser ut så här:

 byt namn på (alternativ) 's / förnamn / nynamn' file1.ext file24.ext 

Bokstaven "s" står för "ersättare" och det är huvuddelen av det reguljära uttrycket. Enkla citat runt det är obligatoriskt. Tillgängliga alternativ är:

  • -v (verbose; skriver ut listan över byt namn tillsammans med deras nya namn)
  • -n ("ingen åtgärd"; ett testläge eller en simulering som bara visar de filer som kommer att ändras utan att röra dem)
  • -f (en tvungen överskrivning av de ursprungliga filerna)

rename kommandot accepterar också jokertecken för att byta namn på flera filer av samma typ, och det fungerar också på filtillägg. Detta skulle till exempel ändra alla filer med förlängningen .jpeg till .jpg:

 byt namn på 's \ .jpeg / \. jpg /' * 

Vildkortsymbolen (*) betyder att alla filer i mappen kommer att påverkas.

Det reguljära uttrycket har också sina egna alternativ (modifierare): "g" (globalt; påverkar alla förekomster av uttrycket) och "jag" (utför fallinsensitiv substitution). De är skrivna i slutet av uttrycket, strax före det slutgiltiga citatet och kan kombineras:

 byt namn på -n 's / DSC / photo / gi' * .jpg 

Detta skulle gälla för alla .jpg-filer som innehåller "DSC", "dSC", "dsc" ... och ändra den delen av filnamnet till "foto". Men på grund av alternativet "-n" skulle kommandot egentligen inte byta namn på filerna utan bara skriva ut dem i konsolfönstret.

Substitution är inte det enda som detta regelbundna uttryck kan göra. Det finns också översättning - markerad med bokstaven "y" - som kan förvandla filnamnen på en mer komplex nivå. Det används oftast för att ändra filnamnssaken:

 byt namn på 'y / az / AZ /' * .jpg 

Detta skulle ändra namnen på alla .jpg-filer från små bokstäver till stora versioner. Att göra det vice versa, byt bara "gammalnamn" och "nynamn" delar av det reguljära uttrycket.

Genom att använda kommandot rename på att blanda några grundläggande mönster för att uppnå önskat resultat. Tack vare alternativet "-n" kommer användarna aldrig att behöva lägga sina filer på spel (eller deras nerver på spel), eftersom det ger en säker och användbar förhandsvisning av vad de nya namnen kommer att se ut.

pyRenamer - den enkla vägen ut

Slutligen, den lösning som alla anti-konsolanvändare har väntat på: en skrivbordsapplikation där allt kan göras med ett enkelt musklick. pyRenamer är ett galet kraftfullt filnamn som är skrivet i Python. För närvarande verkar den officiella webbplatsen vara nere, men användare av Ubuntu och dess derivat kan fortfarande installera pyRenamer från förråd med kommandot:

 sudo apt-get install pyrenamer 

Alternativt kan du kompilera den med den här gaffelkoden från GitHub.

Gränssnittet består av fyra delar:

  1. en trädläsarefilbrowser för att välja filer och mappar
  2. en central förhandsgranskningspanel som visar filnamnen före och efter byte namn
  3. ett flikstyrt kontrollområde för att välja omdämningskriterierna
  4. Alternativ sidofältet

pyRenamer kan ta bort accenter och duplicera symboler från filnamn, ersätt alla textsträngar med en annan, byt filnamn till versaler, små bokstäver eller fallfall och sätt in eller ta bort mellanslag och understreckningar automatiskt. Nybörjare kommer att älska det, för allt detta kan enkelt väljas i det flikade området, förhandsgranskas i huvudområdet och bekräftas genom att klicka på Rename. Om de vill experimentera med mönster, ger pyRenamer ett cheatsheet för att underlätta det.

Avancerade användare kommer att uppskatta pyRenamers förmåga att byta namn på multimediefiler genom att läsa från deras metadata. Det är också möjligt att manuellt byta namn på en enda fil när en omdöps omdirigering är onödig.

I huvudsak bryter pyRenamer funktionaliteten i mv och tar remove kommandon till en användarvänlig GUI. Det är ett utmärkt val för dem som inte är säkra på sina CLI-färdigheter.

Självklart finns det andra sätt att byta namn på filer på Linux - genom att skriva ett skript, till exempel, eller genom att använda andra verktyg som liknar pyRenamer. Vad använder du för att byta namn på dina filer? Dela dina tips och tricks i kommentarerna.

Optimera din Linux-användning med detta paket

Osäker på hur man optimerar Linux så att det passar dina personliga eller professionella behov? Denna Linux Power User Bundle är ett bra ställe att börja förstå. Över fem kurser lär du dig de kritiska kommandoradsegenskaper du behöver för att börja arbeta produktivt med Linux och öppna upp en värld av ny möjlighet. Få tillgång idag för bara $ 19.