Déclenchement d'une action de dossier avec vérification de la taille

0

J'essaie de configurer une action de dossier qui se déclenche uniquement lorsqu'un nouveau fichier est inférieur à une certaine taille. Avec ma compréhension limitée, je n'ai pas été en mesure de trouver un moyen de le faire. Quelqu'un peut-il aider?

Voici un aperçu de mon problème et de mon approche actuelle: je fais du rendu 3D dans Blender via la ligne de commande dans Terminal, mais avec une erreur persistante. Blender restitue l'image de chaque image, mais généralement après 3 ou 4 images de rendu d'animation, le GPU explose et toutes les images suivantes deviennent noires avec une taille de 28 Ko.

Ma méthode de force brute de remédier à cela afin que je puisse rendre sans surveillance:

  1. Blender est configuré pour ne pas écraser les fichiers existants car il crée de nouveaux rendus d'images
  2. Action de dossier Automator à chaque fois qu'une nouvelle image est enregistrée:

    à l'exécution {entrée, paramètres}

    -- ignoring application responses
    tell application "Keyboard Maestro Engine"
        do script "BA8776AB-5030-4753-85FB-0032D396B9B1"
        -- or: do script "renderhack"
    end tell
    -- end ignoring
    
    return input
    

    moyen détourné

  3. Cela déclenche une macro Keyboard Maestro qui effectue les opérations suivantes:

3a. Active la fenêtre du terminal

3b. Tapez la combinaison de touches Ctrl-C pour tuer le processus Blender (le rendu de l'image suivante a déjà commencé)

3c Exécute un script shell pour supprimer tous les petits fichiers, par exemple, trouver -name "* .png" -size -1M -delete (ceci est inutile pour le moment mais le serait si je pouvais résoudre mon problème)

3d. Réactive la fenêtre du terminal

3e. Types Touche fléchée vers le haut, Retour pour relancer le mélangeur dans le terminal.

Cela fonctionne donc, mais j'aimerais trouver une solution plus élégante qui permettrait de gagner quelques secondes de plus par image. Si l'action de dossier peut fonctionner d'une manière conditionnelle, ne déclenche le script / macro suivant que si le fichier le plus récent a une certaine taille.

J'espère que cela a du sens. Malheureusement, le simple fait de déplacer de petits fichiers hors du dossier ne fonctionne pas, car Blender continuera à restituer les images en noir. J'ai besoin de déclencher les étapes ci-dessus (ou quelque chose de similaire qui inclut également de tuer Blender) lorsqu'un petit fichier apparaît dans le dossier.

Stephen Hamacek
la source
1
Veuillez nous montrer les recherches déjà effectuées et ajouter votre action en force brute comme indication de ce que vous voulez faire.
klanomath
Ok je vais ajouter plus de description dans le PO
Stephen Hamacek
OK, c'est presque une question différente ;-) bien que ma réponse soit correcte en ce qui concerne la question initiale ...
klanomath

Réponses:

2

Vous pouvez utiliser Automator pour créer une action de dossier qui filtre les éléments du Finder de la manière suivante:

Choisissez "Action du dossier" dans l'écran de démarrage d'Automator et créez un flux de travail similaire à celui-ci:

DossierAction

Sauvegarde le. L'action de dossier déplacera tous les fichiers de moins de 100 Ko reçus dans le dossier "trier" vers le dossier du Bureau.

Klanomath
la source