Commande : rename – renommage multiple
Renommage multiple de fichiers
Le renommage multiple est très simple il faut seulement comprendre la synthax de la commante rename
qui est sensiblement la même que l’outil de recherche de Vim.
: il est fortement recommandé d’utiliser l’option -n
ou --no-act
en premier lieu pour afficher le résultat obtenu avec le partern donnée. Comme son nom l’indique, cette option n’agit pas sur les fichiers, mais montre le résultat que l’on obtiendrait.
Les options de rename étant peu nombreuses, commençons par là.
Option | Description |
---|---|
-n, --no-act |
Montre le résultat de la commande sans agir sur les fichiers. Il est fortement recommander de commencer par cette option. |
-f, --force |
Écrit par dessus les fichiers si ceux-ci existe déjà. |
-v, --verbose |
Mode verbeux, affiche des informations détaillées sur le renommage en cours. |
Forme général de la commande :
user@debian~$: rename -v 's/old-name/new-name/' format-de-fichier
Changer les extensions de fichier
Par exemple pour changer tous les *.txt en *.doc :
solution
user@debian~$: rename -v 's/\.txt/\.doc/' *
Cette commande va changer toutes les extensions .txt en .doc sans se soucier de la partie avant de l’extension.
contre exemple
user@debian~$: rename -v 's/txt/doc/' *
Cette commande va seulement changer la partie txt des noms de fichiers en doc. Toutefois, si le patern txt apparaît également dans le nom des fichiers il sera également substitué.
contre exemple
user@debian~$: rename -v 's/txt$/doc/' *
Cette commande va changer txt en doc pour n’importe quel fichier qui contient txt (sans le « . ») à la fin de son nom, ce qui signifie que si un fichier est n’a pas l’extension .txt, il sera renommé aussi. C’est pourquoi la meilleure commande pour modifier tous les fichiers txt en doc est :
Supprimer des caratères dans les noms de fichier
Un autre exemple est d’enlever le tiret (“-“) devant les noms de fichiers :
user@debian~$: rename -v 's/-*//' *
Si vous avez une collection de chansons d’un même chanteur, afin d’ajouter le nom du chanteur avant le nom des fichiers *.ogg :
user@debian~$: rename -v 's//singers-name-/' *.ogg
Dans le cas où l’on souhaite supprimer ou modifier un élément qui apparaît à plusieurs reprises dans les noms de fichiers (par exemple, kakarot.png, kanaka.txt, bakaka.mp3 ….), si l’une des commandes ci-dessus est utilisée, seule le premier groupe de caractères « ka » sera modifiés ou supprimés. Pour supprimer ou modifier tous les « ka », il faut utiliser l’option g
(global).
Voici la commande pour supprimer tous les « ka » des noms de tous les fichiers :
user@debian~$: rename -v 's/ka//g' *
Convertion de caractère
: Outre l’option s
(signifiant substitut), y
(signifiant traduit) est une autre option que vous pouvez essayer avec rename. Par exemple, pour convertir tous les noms de fichiers en majuscules, vous pouvez utiliser cette commande :
user@debian~$: rename -v 'y/A-Z/a-z/' *
Un autre exemple est de remplacer les espaces par des tirets (« – ») dans les noms de fichiers ou de répertoires.
user@debian~$: rename -v 'y/ /-/'
by Nicolas SHINEY | October 20, 2013 | No Comments | Manipulation de fichier | Tags : rename