Overzicht
mmv staat voor 'mass move' en is een hulpprogramma dat gespecialiseerd is in het tegelijkertijd verwerken van meerdere bestanden. Waar `mv` voornamelijk wordt gebruikt voor het verplaatsen/hernoemen van individuele bestanden, gebruikt mmv wildcard-patronen zoals `*.jpeg` om de set van bronbestanden te definiëren, en converteert deze naar een nieuw patroon om de set van doelbestanden te creëren. In het bijzonder, terwijl `rename` zich richt op hernoemen, biedt `mmv` het voordeel dat het kopieer- (`cp`), koppel- (`ln`) en verplaatsings- (`mv`) functionaliteit integreert.
Belangrijkste kenmerken
De belangrijkste kenmerken van de mmv-opdracht zijn:
- Verwerkt meerdere bestanden in één keer met behulp van wildcard-patronen.
- Biedt geïntegreerde functionaliteit voor het verplaatsen (`mv`), kopiëren (`cp`), koppelen (`ln`) en hernoemen van bestanden.
- Vergelijkbaar met `rename`, maar biedt meer functionaliteit en is intuïtiever in gebruik.
- Geeft waarschuwingsberichten bij conflicten om fouten te voorkomen.
Verschillen tussen mmv en rename
mmv en rename worden beide gebruikt voor batchgewijs hernoemen van bestanden, maar verschillen in hun werking.
- mmv: Gebruikt wildcards (`*`, `?`, `[ ]`) om patronen te definiëren en reconstrueert vastgelegde delen met nummers (#1, #2). Biedt ook kopieer-/verplaats-/koppelingsfunctionaliteit.
- rename: Is gespecialiseerd in het hernoemen van bestanden met behulp van Perl reguliere expressies (`s/patroon/vervanging/`).
Belangrijkste opties
De mmv-opdracht biedt gedetailleerde controle over de bestandsverwerking via verschillende opties.
1) Opties voor bestandsverwerking
2) Patroonmatching
Gegenereerde opdracht:
Probeer de opdrachtcombinaties.
Uitleg:
`mmv` Voer het commando uit.
Combineer deze opties en voer de opdracht virtueel uit met de AI.
Gebruiksvoorbeelden
Leer de functionaliteit van de mmv-opdracht door middel van verschillende gebruiksvoorbeelden.
Bestandsextensie wijzigen
mmv '*.jpeg' '#1.jpg'
Wijzigt alle `.jpeg` extensies in de huidige directory naar `.jpg`.
Voorvoegsel toevoegen aan bestandsnamen
mmv '*.txt' 'doc_#1.txt'
Voegt het voorvoegsel `doc_` toe aan alle `.txt` bestanden.
Bestanden verplaatsen naar een directory
mmv '*.log' '/var/log/#1.log'
Verplaatst alle `.log` bestanden in de huidige directory naar de `/var/log` directory.
Hoofdlettergevoeligheid wijzigen
mmv '*.*' '#l1.#l2'
Wijzigt hoofdletters in bestandsnamen naar kleine letters.
Voorbeeld van wijzigingen bekijken
mmv -n '*.bak' '#1.old'
Controleert het resultaat van het wijzigen van `.bak` extensies naar `.old` zonder de bestanden daadwerkelijk aan te passen.
Installatie
mmv is standaard niet in de meeste Linux-distributies opgenomen, dus u moet het installeren met de onderstaande commando's.
Debian/Ubuntu
sudo apt update
sudo apt install -y mmv
RHEL/CentOS/Fedora
sudo dnf install -y mmv
Arch Linux
sudo pacman -S mmv
Tips & Waarschuwingen
Hier zijn enkele belangrijke punten om op te letten bij het gebruik van de mmv-opdracht.
Tips
- De patroonsyntaxis van mmv is vergelijkbaar met de wildcards van de shell. `*` staat voor elke tekenreeks, `?` voor één teken. `*` in `from_pattern` kan worden verwezen als `#1`, `#2`, enzovoort, in `to_pattern`.
- Bij een bestandsnaamconflict voert `mmv` standaard de bewerking niet uit en geeft een waarschuwing. U kunt conflicten negeren en forceren met de `-f` optie, maar wees voorzichtig om gegevensverlies te voorkomen.
- Om te voorkomen dat reguliere expressies en wildcard-patronen door de shell worden uitgebreid, moet u de patroontekenreeksen altijd tussen enkele aanhalingstekens (`'`) plaatsen.