0 votes

À l'aide d'un terminal (c'est-à-dire zsh), je veux exécuter une certaine commande shell, chaque fois qu'un fichier dans un dossier donné est enregistré/ajouté.

Donc, dans un certain dossier, disons ~/Desktop/foo ,

chaque fois qu'un fichier/sous-fichier/dossier est touché (ajouté, sauvegardé),

Je veux juste exécuter une certaine commande dans le shell.

Y a-t-il un moyen de faire cela, soit avec une commande zsh, soit avec une autre automatisation sur le Mac, soit avec une application ? TY

1voto

wassname Points 66

Jetez un coup d'œil aux actions sur les dossiers de MacOS. Cela permet de configurer des actions AppleScript et Automator pour surveiller un dossier spécifique et agir sur les changements.

La façon la plus simple d'exécuter un script shell, est d'utiliser Automator avec un Run Shell Script action. Au démarrage, Automator demandera le type, Folder Action est celui qu'il faut choisir.

Quelques conseils : https://developer.apple.com/library/archive/documentation/LanguagesUtilities/Conceptual/MacAutomationScriptingGuide/WatchFolders.html

http://www.macosxautomation.com/automator/folder-action/index.html

N'oubliez pas de consulter les nombreux autres messages sur le sujet.

1voto

CAFxX Points 3911

Vous pouvez le faire en utilisant les actions de dossier :

Ctrl-cliquez sur n'importe quel dossier dans le Finder et choisissez Services>Configuration des actions du dossier à Monterey. Dans les premières versions de MacOS, l'option apparaît dans les listes principales d'éléments contextuels.

Pour éviter l'installation malveillante et accidentelle de Folder Actions, MacOS exige une étape de confirmation qui ne peut pas être automatisée : cliquez sur Service d'exécution dans le Confirmer le service dialogue.

Cela ajoute le dossier actuel à la liste des dossiers avec actions sans ajouter d'actions. Le site Fenêtre de configuration des actions sur les dossiers apparaît avec une boîte de dialogue déjà ouverte qui dit Choisir un script à joindre .

Cette liste comprend ceux qu'Apple a ensemencés, les situant à l'intérieur du /Library/scripts/Folder Actions scripts dossier. Tous les scripts installés par des applications ou que vous avez créés et placés dans le dossier ~/Bibliothèque/scripts/Dossier Actions scripts apparaissent également.

Vous pouvez créer des actions de dossier de plusieurs façons :

  • Utilisez un élément fourni par Apple dans la boîte de dialogue qui s'affiche lorsque vous invoquez Folder Actions Setup. Ces actions concernent principalement le traitement des images.

  • Créez une action de dossier dans Automator en utilisant son ensemble d'outils plus large. Vous pouvez notamment transmettre des informations à un AppleScript, un JavaScript ou un script du shell.

  • Écrivez votre propre AppleScript pour effectuer une tâche.

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