logo Debian Debian Debian-France Debian-Facile Debian-fr.org Forum-Debian.fr Debian ? Communautés logo inclusivité

Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).


L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT → ODT PDF Export

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
utilisateurs:smolski:tutos:script-renames [19/09/2020 10:48]
smolski [Scripts find + rename]
utilisateurs:smolski:tutos:script-renames [04/10/2020 07:47] (Version actuelle)
smolski [Scripts - renommer fichiers et répertoires]
Ligne 1: Ligne 1:
 ====== Scripts - renommer fichiers et répertoires ====== ====== Scripts - renommer fichiers et répertoires ======
  
-  * Objet : Sripts ​pour renommer des séries de répertoires et fichiers+  * Objet : Scripts ​pour renommer des séries de répertoires et fichiers
   * Niveau requis : {{tag>​débutant avisé}}   * Niveau requis : {{tag>​débutant avisé}}
   * Commentaires : //À l'​occasion d'une remise à plat de ma cinémathèque,​ je me trouve à devoir homogénéiser le nom des fichiers et répertoires des films présents sur divers disques durs. //   * Commentaires : //À l'​occasion d'une remise à plat de ma cinémathèque,​ je me trouve à devoir homogénéiser le nom des fichiers et répertoires des films présents sur divers disques durs. //
   * Débutant, à savoir : [[:​doc:​systeme:​commandes:​le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !.]] :-)   * Débutant, à savoir : [[:​doc:​systeme:​commandes:​le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !.]] :-)
 +  * Lien vers le forum : [[https://​debian-facile.org/​viewtopic.php?​pid=343422#​p343422]]
  
 ===== Introduction ===== ===== Introduction =====
Ligne 15: Ligne 16:
  
 ===== Scripts find + rename ===== ===== Scripts find + rename =====
 +
 +Exemple d'​utilisation de find et rename pour renommer en masse des fichiers et des dossiers.
  
 ==== Installation ==== ==== Installation ====
Ligne 22: Ligne 25:
 D'​abord mettre à jour ses paquets, voir [[doc:​systeme:​apt|les outils apt pour plus d'​explications]] D'​abord mettre à jour ses paquets, voir [[doc:​systeme:​apt|les outils apt pour plus d'​explications]]
 <code root>apt update && apt full-upgrade</​code>​ <code root>apt update && apt full-upgrade</​code>​
-Et installer les 2 bouzins ​:+Et installer les 2 paquets ​:
 <code root>apt install rename find</​code>​ <code root>apt install rename find</​code>​
  
- +<note important>​Documentation find : [[doc:​systeme:​find|dans le tuto find]].</​note>​
-Documentation find : [[doc:​systeme:​find|dans le tuto find]].+
  
 ==== Exécution ==== ==== Exécution ====
Ligne 32: Ligne 34:
 //(Ce titre n'est pas un vain mot, ici...)// :-D //(Ce titre n'est pas un vain mot, ici...)// :-D
  
-Suite à un repositionnement de plusieurs listes de films il me faut renommer les titres ​façon ligne de commande ​en supprimant tous les aspects purement littéraux qui falsifieraient le résultat des commandes que j'​utilise pour la gestion informatique de l'​ensemble de la cinémathèque.+Suite à un repositionnement de plusieurs listes de films il me faut renommer les titres en supprimant tous les aspects purement littéraux qui falsifieraient le résultat des commandes que j'​utilise pour la gestion informatique de l'​ensemble de la cinémathèque. 
 + 
 +<note info>​Pour l'​exemple,​ on considérera que toute la cinémathèque est stockée dans le dossier ''/​mnt/​bla/'',​ et l'on veut renommer tous les dossiers, sous-dossiers,​ et leurs fichiers avec différentes contraintes.</​note>​ 
 + 
 +=== Remplacer les espaces et apostrophes === 
 + 
 +Pour remplacer les espaces et les apostrophes par, respectivement,​ des ''​_''​ et des ''​-''​ dans les noms de fichiers/​dossiers. 
 + 
 +<code user>​find /mnt/bla/ -depth -execdir rename "y/ '/​_-/"​ "​{}"​ \;</​code>​ 
 + 
 +=== Supprimer les parenthèses === 
 + 
 +Pour supprimer les parenthèses dans les noms de fichiers/​dossiers. 
 + 
 +<code user>​find /mnt/bla/ -depth -execdir rename "​s/​[\)\(]//​g"​ "​{}"​ \;</​code>​ 
 + 
 +=== Mettre en majuscule la première lettre === 
 + 
 +Pour mettre la première lettre en majuscule dans les noms de fichiers/​dossiers. 
 + 
 +<code user>​find /mnt/bla/ -depth -execdir rename "​s/​^\.\/​(.)/​.\/​\U\$1/"​ "​{}"​ \;</​code>​
  
-=== Espaces apostrophe et tiret ===+=== Tout d'un coup ===
  
-  - Remplacer ​les espaces par un underscore (ou Tirets bas en fr) " _ " ​ et les apostrophes " ' " par un petit tiret " - " ​ dans le dossier nommé /bla/ pour la circonstance et ses sous-répertoires jusqu'​au fichiers contenus. \\ Par exemple, le répertoire nommé ''​bla bla'​bla'',​ avec son sous-répertoire nommé pareillement ainsi que le fichier se nommeront tous : \\ ''​Bla_bla-bla''​ :<code user>​find /bla/ -depth -execdir rename "​y/'/​_-/"​ "​{}"​ \;</​code> ​      +Pour enchaîner toutes ​les substitutions ​en une seule commande ​:
-  - Supprimer les parenthèses dans /bla/, ses sous-répertoires et celui des fichiers contenus :<code user>​find /bla/ -depth -execdir rename "​s/​[\)\(]//​g"​ "​{}"​ \;</​code>​ +
-  - Mettre en majuscule la première lettre des dossiers d'un répertoire nommé /​bla/​((Modifié ainsi en //Bla//)), de tous ses sous-répertoires et des fichiers contenus :<code user>​find /bla/ -depth -execdir rename "​s/​^\.\/​(.)/​.\/​\U\$1/"​ "​{}"​ \;</​code>​+
  
-Combinaison de ces 3 codes :<code user>​find /bla/ -depth -execdir rename "y/ '/​_-/;​s/​[\)\(]//​g;​s/​^\.\/​(.)/​.\/​\U\$1/"​ "​{}"​ \;</​code>​+<code user>​find ​/mnt/bla/ -depth -execdir rename "y/ '/​_-/;​s/​[\)\(]//​g;​s/​^\.\/​(.)/​.\/​\U\$1/"​ "​{}"​ \;</​code>​
  
utilisateurs/smolski/tutos/script-renames.1600505337.txt.gz · Dernière modification: 19/09/2020 10:48 par smolski

Pied de page des forums

Propulsé par FluxBB