3 votes

Renommer les fichiers avec une recherche RegEx, de préférence via JXA

J'ai une question en deux parties ici. J'essaie de créer un service d'automatisation pour renommer rapidement des fichiers. Mon travail utilise une syntaxe de nom de fichier 1234-01a-NomduFichier.psd où 1234 est le numéro de travail, 01 est le numéro de fichier et le a est une lettre de version, comme, la version deux sera 01b, etc. Obtenir la lettre actuelle avec RegEx et l'incrémenter est facile, le problème que j'ai est comment renommer réellement le fichier avec JXA. Rien de ce que je peux trouver sur Google ne répond en réalité à cette (je suppose) simple question. J'ai essayé un certain nombre de permutations de ce qui suit. Y a-t-il quelque chose de basique que je fais mal ici ?

theFile = Chemin("~/Bureau/1234-12a-test.png");
theFile.name = "çaNeFonctionnePas.png";

Je pourrais alternativement avoir à la fois un script Apple exécuté et un script Javascript exécuté dans le flux de travail de l'automatisation, et essayer de passer le nom d'un côté à l'autre, mais je préférerais le garder simple si possible.

4voto

grg Points 181593

L'objet Path est une structure très basique et ne fournit aucune fonctionnalité réelle du système de fichiers. Au lieu de cela, utilisez Événements Système :

theFile = Application("System Events").aliases.byName("~/Desktop/1234-12a-test.png");
theFile.name = "thisDoesWork.png"

0 votes

Aaaah, merci! Savez-vous s'il existe des ressources qui expliquent l'utilisation des objets Path / autres informations sur les systèmes de fichiers? La documentation d'Apple n'est pas très utile, et le livre de cuisine JXA n'a pas vraiment abordé ce sujet.

0 votes

@Alexander Je les ai seulement jamais vus retournés à la place d'une chaîne faisant référence à un chemin et il ne semble pas y avoir de propriétés sur eux, mais c'est juste empirique — la documentation de JXA est très rare !

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