3 votes

Nettoyer les noms de fichiers à l'aide d'Automator

Je suis assez novice en ce qui concerne Automator, dans la mesure où je ne l'ai utilisé qu'une seule fois auparavant. Ce que j'essaie de faire, c'est de nettoyer un certain nombre de ressources d'applications Android, qui sont nommées comme suit :

01_something
1_something_else
002_something_too

Ce que je veux faire, c'est supprimer les premiers chiffres + le trait de soulignement, c'est-à-dire tous les premiers caractères non alphabétiques. J'imagine que cela peut être fait soit en ayant un script qui est assez intelligent pour les supprimer, peut-être par une sorte de regex, soit en ayant une invite qui me demande combien de caractères je veux supprimer, si Automator supporte même cela.

Deuxièmement, j'aimerais ajouter un préfixe aux fichiers, par exemple tile_ o ab_ . Encore une fois, si je pouvais sélectionner des fichiers dans le Finder, choisir "Ajouter un préfixe" ou autre, et saisir un texte dans une invite, ce serait optimal.

6voto

Ryan Spears Points 1524

Il n'est pas nécessaire de disposer d'un logiciel de renommage de fichiers dédié pour effectuer des opérations de renommage par lots aussi simples - Automator vous permettra de créer des services qui feront ce que vous voulez.

Votre première tâche (suppression d'un préfixe numérique suivi d'un trait de soulignement dans les noms de fichiers) peut être résolu comme suit :

  1. créez un service Automator (choisissez "Service" lorsque vous êtes invité à choisir le type de flux de travail à créer par Automator). Configurez-le pour qu'il prenne "Fichiers ou dossiers" comme entrée.

  2. ajoutez une action "Filter Finder Items" et définissez-la pour filtrer sur la condition "none" correspondant à "kind is Folder" pour vous assurer que vous n'avez que des fichiers.

  3. Ajoutez une action "Run Shell script" et assurez-vous qu'elle s'exécute. /bin/bash et prend ses entrées "comme arguments". Insérez le code suivant :

    shopt -s extglob
    for f in "$@"; do
        fpath="${f%/*}"
        fname="${f##*/}"
        mv "$f" "$fpath"/"${fname/#+([[:digit:]])_/}"
    done

    - voir le Chapitre du manuel de référence de Bash consacré à la correspondance des motifs. pour une explication de la façon dont cela fonctionne (lecture recommandée pour ce genre d'opération de toute façon :)).

  4. enregistrer à l'emplacement par défaut en tant que "Remove Prefix".

- vous disposerez désormais d'une option "Supprimer le préfixe" dans le menu "Service" du Finder (et dans le menu contextuel des fichiers et des dossiers) qui renommera les fichiers de manière à ce qu'un préfixe numérique suivi d'un trait de soulignement soit supprimé du nom du fichier.

La deuxième tâche (en faisant précéder les fichiers d'une chaîne sélectionnable) est encore plus facile à réaliser, en utilisant une action standard d'Automator :

  1. créer un service Automator comme dans les étapes 1 et 2 ci-dessus.
  2. ajouter une action "Renommer les éléments du Finder". Réglez-la sur "Ajouter du texte", entrez un préfixe par défaut dans la zone de texte (si vous le souhaitez), définissez la chaîne à appliquer "avant le nom". Sélectionnez "Options" dans la ligne inférieure de l'action et cochez "Afficher cette action lors de son exécution" (disclaimer : je suis sur un système allemand - toutes les traductions sont approximatives).
  3. enregistrer à l'emplacement par défaut comme "Ajouter un préfixe".

- lorsque vous exécutez le service sur un ou plusieurs fichiers, vous verrez apparaître le dialogue suivant :

Automator rename option dialog

(ou plutôt, son équivalent dans la langue de votre système), où vous pouvez modifier le préfixe que vous souhaitez utiliser avant de l'appliquer.

Bon renommage avec les capacités embarquées d'OS X :).

0voto

IconDaemon Points 17417

J'ai toujours trouvé que l'application commerciale Un meilleur renommage du Finder un gain de temps lorsqu'on essaie de mettre au point des actions complexes comme celle-ci.

L'année dernière, j'avais un énorme ensemble de fichiers PDF (>25 000 fichiers individuels !) dont les noms de fichiers devaient être modifiés de la manière suivante Prénom, Nom .pdf à Nom_Prénom .pdf. Bien qu'il s'agisse d'un mod de nom de fichier relativement simple, l'ABFR possède des fonctionnalités beaucoup plus avancées qui vous permettront de faire ce dont vous avez besoin.

Ce qui a rendu le travail encore plus facile est le mécanisme très cool par lequel ABFR peut créer un droplet à partir de vos spécifications de renommage. Déposez un dossier ou un fichier sur le droplet - ABFR traite les fichiers en un clin d'œil.

(Divulgation : je suis un client très satisfait de ce logiciel, et je n'ai aucun intérêt financier dans ABFR).

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X