Niveau :      
Résumé : rename ; mmv

Vous avez plein de fichiers téléchargés chez vous et c'est le bazar. Il vous faut les renommer et les déplacer vers un endroit ou ils pourront reposer en paix.

Pour cela vous avez 2 commandes à votre disposition

Rename

Rename est une commande du paquet prename. Pour ceux qui connaissent les expressions régulières perl, c'est génial.

Exemple de suppresson des numéros au début des noms de fichiers mp3 :

$ rename 's/dd-(.*).mp3/$1.mp3/' *

Pour ne pas vous louper faites un test avec l'option -n

Mmv

Mmv du paquet éponyme, permet de faire bien plus que rename au prix de quelques difficultés sur les expressions utilisées. On peut entre autre déplacer, copier, faire des liens symboliques.

$ mmv "[0-9][0-9]*.mp3" "#3.mp3"

? et * fonctionnent comme en shell et [] comme en grep. Et c'est à peu près tout ce qu'il y a à savoir.

Pour la partie réécriture, un #x correspond au match d'un des 3 patterns précédents.

Tout comme pour rename, l'option -n permet de vérifier qu'on ne casse rien.

Il est aussi possible de faire une copie plutôt qu'un renommage :

$ mcp "[0-9][0-9]*.mp3" "#3.mp3"

Et enfin, il est possible d'utiliser plusieurs patterns dans une même commande. Pour cela on ne passe pas de paramètre et on utilise l'entrée standard :

$ mmv
> *.mp3 mp3/#1.mp3
> *.avi avi/#1.avi