0 votes

Problème avec Automator/AppleScript Question

Je suis en train de créer un programme pour supprimer des fichiers/dossiers. Voici à quoi ressemble mon programme dans Automator :

enter image description here

Le problème que je rencontre est que parfois, lorsque le programme s'exécute, j'obtiens cette erreur :

enter image description here

Le programme fonctionne, donc je ne sais pas pourquoi cette erreur apparaît. Existe-t-il une commande Automator ou AppleScript que je peux utiliser pour contourner cette erreur afin qu'elle ne s'affiche pas du tout ?

enter image description here

C'est l'AppleScript :

delay 5
tell application "Finder"
    try
        delete (every item of folder "TV Show Downloads" of disk "Drobo" whose modification date is less than ((get current date) - 1 * days))
    end try
end tell

1voto

Ted Wrigley Points 725

Je pense que vous obtenez cette erreur parce que vous mettez à la corbeille des dossiers et des fichiers dans la même action. En d'autres termes, si Automator a mis à la corbeille un dossier contenant un fichier '.mov', il mettra également à la corbeille le fichier '.mov' ; puis (plus tard) quand Automator essaiera de mettre à la corbeille ce fichier '.mov', il ne le trouvera pas, car il est déjà dans la corbeille.

Première solution à essayer : déplacer le kind is folder en bas de la liste, dans l'espoir qu'elle trie les dossiers en dernier.

Si cela ne fonctionne pas, vous devrez peut-être complexifier votre flux de travail avec une variable, comme ceci : enter image description here

0voto

red_menace Points 1014

Une erreur fréquente d'Automator est de se contenter de récupérer des éléments, en oubliant de supprimer une action ajoutée pour le test, ou qu'une application ou un service peut déjà avoir des éléments transmis au flux de travail. Il peut en résulter des éléments d'entrée supplémentaires ou en double - par exemple un élément Éléments du filtre Finder L'action appliquera les filtres à la actuel tandis qu'une Éléments de recherche appliquera les filtres aux éléments provenant de la source spécifiée, en ajoutant aux éléments du flux de travail.

Votre erreur est très probablement due au fait que vous avez doublé certaines références de fichiers. L'application reçoit déjà des éléments qui lui sont transmis automatiquement (les éléments déposés sur elle), et ceux-ci sont ajoutés aux éléments renvoyés par la commande Éléments de recherche ce qui fait que le flux de travail tente de mettre à la corbeille des éléments qui ont déjà été déplacés vers la corbeille.

Automator ne dispose d'aucune action de contrôle ou conditionnelle. Par conséquent, si vous exécutez une application sans avoir l'intention d'y déposer des éléments, chaque action est assortie d'une fonction Ignore Input qui empêchera l'utilisation de tous les éléments qui lui sont passés. En utilisant cette option dans la commande initiale Éléments de recherche vous n'aurez pas à vous soucier de l'ajout d'éléments supplémentaires par le biais de l'application.

Si vous voulez vous assurer que vous n'avez pas accidentellement regroupé quelque chose avec les éléments que vous voulez mettre à la poubelle, utilisez la fonction Éléments du filtre Finder au lieu de Éléments de recherche exécutera les filtres sur les éléments transmis au flux de travail sans en obtenir d'autres.

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