Mmv

Uit De Vliegende Brigade
Naar navigatie springen Naar zoeken springen

Commando mmv (afkorting van mass move) is verrekte handig voor bulk-aanpassen van bestandsnamen.

De basis

mmv \*.JPG \#1.jpg        # Hernoem *.JPG → *.jpg
# mmv *.JPG #1.jpg        # Werkt niet: Je moet de * en #1 escapen!
# mmv \*.JPG \#.jpg       # Werkt niet: Je moet een volgnummer geven na #, ook als er maar één wildcard wordt gebruikt

Iets interessanter

mmv \*Logo\* \#1logo\#2   # Hernoem alle bestanden waar de reeks 'Logo' in voorkomt naar 'logo'
mmv \*-\*-\* \#1.\#2-\#3 # Hernoem bestanden waar twee streepjes in voorkomen. Vervang eerste streepje in een punt

Spaties in bestandsnamen

Spaties kun je escapen met '\ ', dus backslash-spatie. Je kunt ook aanhalingstekens gebruiken:

mmv naam\ .jpg naam.jpg   # Spatie in from-gedeelte
mmv naam.jpg naam\ .jpg   # Spatie in to-gedeelte.
mmv naam.jpg "Dit is de naam.jpg" # Spatie in to-gedeelte
mmv \*.flac "Fairport Convention - Liege & Lief -"\#1       # Hehe, eindelijk gelukt!

Variabelen

Je kunt variabelen gebruiken. Da's misschien handig, al lijk je er geen spaties mee te kunnen escapen. Het idee:

in1="hallo"
mmv \*$in1 \#1Doei

Strings tussen dubbele aanhalingstekens

Dit is wél handig ivm. escapen van spaties. Bv.:

mmv \*" - REM.flac" \#1.flac
mmv \*"CD 1"\* \#1"CD 2"\#2

Indentation

Je kunt indentation gebruiken om het leesbaarder te maken. Het karakter om een commando te laten continueren op de volgende regel, is "\" en da's weer niet handig. Voorbeeld:

mmv \
	\*"CD 1"\* \
	\#1"CD 2"\#2

of

mmv \
	\*"CD 1"\*         \
	\#1"CD 2"\#2

Bronnen