Aller au contenu principal

Un logiciel de contrôle de noms de fichiers : parce que ça peut servir parfois

07/01/2019

Présentation

Si vous gérez une bibliothèque numérique, par exemple, et devez contrôlez que l’ensemble des fichiers images a un nom correspondant bien à la nomenclature attendue… ou pour toute situation où ça peut rendre service : voici un petit logiciel qui permet de lancer un contrôle sur un ensemble de répertoires.

Le principe est relativement simple : il suppose que vous avez quelque part sur votre disque dur un ensemble de fichiers dont les noms doivent correspondre à certaines règles.

Par exemple : tous doivent avoir

  • 1 à 8 caractères alphanumériques
  • suivis d’un tiret court –
  • suivi de 1 à 5 chiffres
  • suivis d’un tiret court –
  • suivi de 3 chiffres
  • suivis d’un underscore _
  • suivi de 1 à 8 caractères qui peuvent être des chiffres ou des tirets
    et seules certaines extensions sont prévues.C’est cette règle qui est appliquée dans la copie d’écran ci-dessus.

    • GAT154-9876-414_2018-12.JPG est conforme
    • THZ 20181247146.JPG ne l’est pas

Options

Une option permet de sortir les fichiers non conformes à la règle indiquée. Ou l’inverse.

Comme l’utilisateur peut être amené à utiliser systématiquement la même règle (ou utiliser 2 ou 3 règles distinctes à tour de rôle) :

  • la règle dans le formulaire est modifiable à l’exécution
  • On peut modifier la règle qui s’affiche par défaut, dans un fichier de configuration (fichier config/prefs.json)
  • Un fichier de logs en local enregistre toutes les exécutions successives du programme, avec les paramètres utilisés, pour pouvoir rejouer une règle donnée (fichier config/logs.txt)

L’installation est simple.

Les expressions régulières

Le seul hic : il faut savoir écrire des expressions régulières (il faudrait dire « expressions rationnelles », c’est une traduction fallacieuse de regular expressions, ou regex).

Mais il y a plein de tutoriels en ligne, de mémos qui rappellent les principales classes abrégées, et c’est une compétence qui peut servir en plein d’endroits : Python, LibreOffice, Open Refine, Notepad++, pour trouver ou corriger des chaînes de caractères.

Personnalisation

Un des trucs intéressants : le logiciel est conçu pour être personnalisé au niveau d’un établissement. Imaginons que vous coordonnez une chaîne de traitement (liée à l’alimentation d’une bibliothèque numérique, par exemple), mais que ce n’est pas vous qui assurez le contrôle du nommage des fichiers par le prestataire. Vous pouvez

  1. télécharger et décompresser le logiciel
  2. ouvrir le fichier config/prefs.json pour modifier l’expression régulière par défaut
    (attention : pensez à mettre des doubles \\ au lieu de simples \ pour que le JSON les interprète correctement)
  3. rezipper l’ensemble du dossier
  4. distribuer en interne le logiciel aux collègues en charge des contrôles au nommage, afin qu’ils n’aient plus qu’à lancer le contrôle, sans avoir à écrire eux-même l’expression régulière (même par copier-coller).

C’est du Python pré-compilé. Le code source est disponible sur Github, et vous pouvez le récupérer et le modifier (par exemple : le rapport est déposé par défaut dans le répertoire analysé, et s’ouvre à la fin de l’exécution. C’est un truc qui peut vous déranger).

Et le programme s’appelle : File name checker. Je sais, c’est nul. Je suis nul — en nommage.

One Comment
  1. Dominique Papin permalink
    10/01/2019 14:55

    Le nom est nul…? Je dirais plutôt qu’il est très efficace pour le repérage! Merci du partage

Commentaires fermés

%d blogueurs aiment cette page :