Icône

Renommer en nombre : pyRenamer

Vous l'avez certainement remarqué : sous Ubuntu (avant la version 18.04 pour Nautilus), il n'est pas possible, d'un clic de souris, de renommer en même temps plusieurs fichiers sélectionnés. PyRenamer permet de pallier cette impossibilité en changeant facilement le nom de plusieurs fichiers (et aussi des dossiers) en une seule fois.

Écran principal
PyRenamer s'intègre parfaitement dans l'environnement GNOME et dans Nautilus en particulier. Grâce à un script (décrit plus bas), il peut même s'intégrer directement au menu de gestion des fichiers.

PyRenamer permet de renommer des fichiers et/ou des dossiers en utilisant :

  • des modèles de substitution par segments de chaînes de caractères ;
  • l'insertion ou la suppression de caractères à un emplacement défini ;
  • la substitution de chaîne de caractères ;
  • des méta-données EXIF (pour les photos) ;
  • des méta-données audio (pour la musique mp3 par exemple) ;
  • des variations de casse (majuscule, minuscule, initiale,…) ;
  • un facteur aléatoire ;
  • et bien d'autres possibilités.
pyRenamer n'étant plus mis à jour depuis 2013 et ayant disparu des dépôts depuis Ubuntu 18.04, le logiciel peut potentiellement contenir des failles de sécurité non corrigées.


Depuis Ubuntu 18.04, cette fonction est native dans Nautilus : après la sélection de plusieurs fichiers, la fonction Renommer… sur un clic-droit permet un renommage par lots.

Pour un logiciel équivalent et maintenu à jour, il est préférable de se tourner vers Inviska Rename, par exemple, ou d'autres alternatives.

  • Ubuntu avant 18.04 :

Installez le paquet pyrenamer.

  • Ubuntu 18.04 :

Le paquet n'est plus disponible dans les dépôts à partir de la version 18.04. On peut toutefois l'installer en utilisant le paquet .deb ici : pyrenamer_0.6.0-1.2_all.deb

Ce paquet .deb n'est plus utilisable pour Ubuntu après 18.04, car la dépendance pyton-gconf n'est plus satisfaite.
  • Ubuntu 20.04 :

La méthode de contournement pour l'installation de PyRenamer pour Ubuntu 20.10 décrite ci-dessous devrait également fonctionner pour Ubuntu 20.04.

Cette méthode n'a pas été testée sur Ubuntu 20.04 à la minute d'écriture de ce tutoriel (à vérifier, donc, pour mise à jour par d'autres utilisateurs).
  • Ubuntu 20.10 :

Principe : on peut installer PyRenamer sur Ubuntu 20.10 en identifiant, puis en téléchargeant manuellement, puis en installant ses dépendances.

Il ne s'agit pas ici d'une recette "clé en main", mais d'un principe d'installation à adapter – peut-être à améliorer – qui devrait fonctionner même si votre configuration Ubuntu 20.10 n'est pas strictement identique à la mienne.

Certes, cette méthode n'est pas très "propre", mais elle ne semble pas pour autant perturber ou casser l'intégrité du système.

Prérequis : Python 2.7 minimal installé (Présent dans les packages de Ubutun 20.10 et normalement installé par défaut)

Etapes :

  1. Sur votre bureau créez un dossier "PyRenamer" dans lequel vous sauvegarderez les dépendances de PyRenamer téléchargées. Alternativement, ouvrez un terminal sur votre bureau puis saisissez les lignes suivantes :
    cd ~/Bureau
    mkdir PyRenamer
  2. Téléchargez ensuite les paquets listés ci-dessous sur le site Pkgs.org (http://pkgs.org) (exemple avec des packages d'architecture amd64) puis enregistrez les fichiers téléchargés dans le répertoire "PyRenamer" créé sur votre bureau :
    • python-gconf_2.28.1+dfsg-1.2_amd64.deb
    • libffi6_3.2.1-9_amd64.deb
    • python-gobject-2_2.28.6-13+b1_amd64.deb
    • python-gconf_2.28.1+dfsg-1.2_amd64.deb
    • python-pkg-resources_44.1.1-1_all.deb
    • python-numpy_1.16.2-1_amd64.deb
    • python-cairo_1.16.2-1+b1_amd64.deb
    • python-gtk2_2.24.0-5.1+b1_amd64.deb
    • python-glade2_2.24.0-5.1+b1_amd64.deb
    • python-hachoir-core_1.3.3-4_all.deb
    • python-hachoir-parser_1.3.4-2_all.deb
    • python-hachoir-metadata_1.3.3-2_all.deb
    • pyrenamer_0.6.0-1.2_all.deb
  3. Ouvrez un terminal (ou utilisez le terminal précédemment ouvert) et placez-vous dans le répertoire "PyRenamer" créé sur votre bureau à l'étape 1 ci-dessus qui contient les .deb des dépendances de PyRenamer :
    cd ~/Bureau/PyRenamer
  4. Installez les paquets téléchargés en saisissant dans votre terminal déjà ouvert et dans l'ordre suivant les commandes d'installation des dépendances listées ci-dessous :
    sudo dpkg -i python-gconf_2.28.1+dfsg-1.2_amd64.deb
    sudo dpkg -i libffi6_3.2.1-9_amd64.deb
    sudo dpkg -i python-gobject-2_2.28.6-13+b1_amd64.deb
    sudo dpkg -i python-gconf_2.28.1+dfsg-1.2_amd64.deb
    sudo dpkg -i python-pkg-resources_44.1.1-1_all.deb
    sudo dpkg -i python-numpy_1.16.2-1_amd64.deb
    sudo dpkg -i python-cairo_1.16.2-1+b1_amd64.deb
    sudo dpkg -i python-gtk2_2.24.0-5.1+b1_amd64.deb
    sudo dpkg -i python-glade2_2.24.0-5.1+b1_amd64.deb
    sudo dpkg -i python-hachoir-core_1.3.3-4_all.deb
    sudo dpkg -i python-hachoir-parser_1.3.4-2_all.deb
    sudo dpkg -i python-hachoir-metadata_1.3.3-2_all.deb
    sudo dpkg -i pyrenamer_0.6.0-1.2_all.deb

NOTE 1 : de préférence, ne faites pas un copier-coller global de toutes les lignes ci-dessus dans votre terminal. Préférez plutôt une exécution individuelle de chaque ligne ; ainsi, en cas de problème de dépendance manquante toujours possible, vous pourrez ainsi plus facilement corriger le problème (cf. note 2 ci-dessous) avant de reprendre le cours normal de ces lignes d'installation.

NOTE 2 : les dépendances de PyRenamer devraient normalement s'installer sans difficulté. Si des dépendances devaient néanmoins manquer, elles seront indiquées dans le message d'erreur de dpkg : notez-les, puis téléchargez la/les dépendance(s) manquante(s) sur le site Pkgs.org : http://pkgs.org, et installez-les avant de passer à la ligne d'installation suivante dans la liste ci-dessus.

Lancer l'application depuis le tableau de bord d'Unity. L'application se trouve dans la catégorie "Code".
(Pour les menus classiques : Applications → accessoires → PyRenamer).

Pyrenamer propose de très nombreuses possibilités de renommer vos fichiers. Il serait trop long d'en faire la liste sur cette page. Pour faciliter votre choix et accéder aux tâches, placer votre curseur au-dessus des éléments pour obtenir des info-bulles. Vous pouvez faire tous les tests que vous souhaitez, rien ne sera modifié tant que vous n'avez pas cliqué sur le bouton Renommer.

Options

Pour accéder aux options, il suffit de cliquer sur l’icône outils en haut à droite de la fenêtre de Pyrenamer.

Pour faciliter la prise en main de Pyrenamer, il est conseillé d'activer l'aperçu automatique et l'option "Garder les extensions" pour modifier facilement les noms de fichiers sans toucher à leur extension.

Intégration à l'explorateur de fichier Nautilus

Pour vous faciliter encore plus la tâche, vous pouvez lancer pyRenamer directement depuis le dossier contenant les fichiers à renommer.

Création du script

  • Se rendre dans le dossier contenant les scripts pour Nautilus.
Pour s'y rendre rapidement, et à condition qu'un script y soit déjà présent, faire un clic droit sur n'importe quel objet (dossier ou fichier) puis dans le menu déroulant, choisir : Scripts → Ouvrir le dossier de script.

Le dossier contenant les scripts se nomme scripts. Il est dans le dossier caché .local/share/nautilus de votre dossier personnel.

  • Faire un clic droit sur l'espace vide du dossier puis dans le menu déroulant, choisir : Créer un nouveau document → Document vide ;
  • Nommer ce nouveau document : Renommer en masse ;
Vous pouvez nommer le fichier comme bon vous semble, mais sachez que c'est sous ce nom qu'il apparaîtra dans vos menus Nautilus
  • Ouvrir ce dernier avec un éditeur de texte (en double-cliquant dessus avec Gedit par défaut).
  • Copier-coller le code suivant dans le fichier Renommer en masse
Renommer en masse
#!/bin/bash
#Lance l'application Pyrenamer dans le dossier courant.
#########################################################################
# Nautilus "Renommer en masse" Script #
##########################################################################
if [ "$1" = "" ];then
wdir=${NAUTILUS_SCRIPT_CURRENT_URI#file://}
wdir=${wdir//%20/ }
else
filetype=$(file "$1")
filetype=${filetype##*: }
 
if [ "$filetype" = "directory" ];then
wdir=${NAUTILUS_SCRIPT_SELECTED_FILE_PATHS%%$1*}
#wdir=$wdir/$1     #supprimer le "/" qui génère un chemin erroné
wdir=$wdir${1##*/}
else
wdir=${NAUTILUS_SCRIPT_SELECTED_FILE_PATHS%%$1*}
fi
fi
pyrenamer "$wdir"
  • Fermer ce fichier en enregistrant les modifications ;
  • Rendre ce fichier exécutable ( clic droit sur le fichier puis choisir "Propriétés" → onglet "permission" et cocher la case "autoriser l'exécution du fichier comme un programme").

Utilisation du script

Pour renommer plusieurs fichiers en même temps avec Pyrenamer, il suffit dorénavant de faire un simple clic droit sur n'importe quel objet du dossier actif et dans le menu déroulant, choisir : Scripts → Renommer en masse.

Ce script est utilisable avec tous les explorateurs de fichiers basés sur Nautilus. L'intégration se fait de la même façon que sous Nautilus.
Pour Nemo (un fork de Nautilus dans Cinnamon) par exemple, il faut simplement mettre le script ci-dessus dans le dossier ~/.local/share/nemo/scripts/ et remplacer les variables NAUTILUS_… par NEMO_…

Intégration dans le comportement de Nemo

FIXME Une option est désormais disponible dans Nemo pour que lorsque plusieurs fichiers sont sélectionnés et que vous cliquez sur renommer, vous pouvez invoquer la commande de votre choix. Le seul problème est que lorsque l'on invoque l'argument "%P" de Nemo, il contient des caractères en trop. Voici un code que j'ai personnellement placé dans /usr/local/bin/pyrenamer et bien entendu destiné à pyrenamer :

pyrenamer
#!/bin/bash
# /usr/local/bin/pyrenamer (MagicMint) O0116
# pyRenamer wrapper for Nemo
 
cmd="/usr/bin/pyrenamer"
 
if [[ $# != 0 ]]; then
 #Remove "file://" from the 1st name
 dir=/`dirname "$1" | cut -d'/' -f4-`
fi
eval "$cmd" --root "$dir"
#End of script

Il faut tout de même le rendre exécutable par la commande :

sudo chmod +x /usr/local/bin/pyrenamer

Ainsi, dans les paramètres de Nemo, onglet Comportement, vous pourrez rentrer dans le renommage de plusieurs fichier

/usr/local/bin/pyrenamer %P
Sur Nemo 3.0.6 et Ubuntu 16 (a mimima), cela ne fonctionne pas

Pour désinstaller pyRenamer, il suffit de supprimer son paquet. Selon la méthode choisie, le configuration globale de l'application est conservée ou supprimée. Les journaux du système, et les fichiers de préférence des utilisateurs dans leurs dossiers personnels sont toujours conservés.

Effacez aussi le fichier de script Nautilus le cas échéant.

  • pyrenamer.txt
  • Dernière modification: Le 05/06/2021, 11:14
  • par arverne73