Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > fr.comp.sys.mac.programmation > #1976

Actions de dossier (was: [Q - OS 10.13] Pb d'autorisations)

From M.V. <mv@gmail.com.invalid>
Newsgroups fr.comp.os.mac-os.x, fr.comp.sys.mac.programmation
Subject Actions de dossier (was: [Q - OS 10.13] Pb d'autorisations)
Followup-To fr.comp.sys.mac.programmation
Date 2021-01-02 16:19 +0000
Organization M.V. & Co
Message-ID <rsq6ep$a25$1@dont-email.me> (permalink)
References (6 earlier) <rshkod$2rnc$3@news.gegeweb.eu> <i5379qFh4n9U1@mid.individual.net> <rshrjo$3uv$4@shakotay.alphanet.ch> <rskb4c$c66$1@dont-email.me> <rskbrl$lk9$1@shakotay.alphanet.ch>

Cross-posted to 2 groups.

Followups directed to: fr.comp.sys.mac.programmation

Show all headers | View raw


[Supersedes: <rsq6c3$9ge$1@dont-email.me>]

N.B. J'ai placé un fu2 vers fr.comp.sys.mac.programmation

Le 31 décembre 2020 à 12:15, Benoit a écrit ce qui suit :

> j'ai trouvé ça dans System/Library/CoreServices. Il n'y aurait
> pas un autre moyen d'y avoir accès ? Et donc de le découvrir.

Tu peux créer un alias vers 
/System/Library/CoreServices/Applications/Folder Actions Setup.app
et le placer dans un endroit accessible.

Sinon, pour attacher un script à un dossier, on procède en général
ainsi :
- clic droit sur le dossier cible
- aller à Services > Configuration des actions de dossier…
Dans la fenêtre de gauche se trouvent les dossiers cibles et à droite
le ou les scripts attachés au dossier sélectionné.

Une action de dossier est en réalité un script attaché à un dossier,
script qui se lance automatiquement en fonction de sa programmation :
la plupart du temps on crée un script qui va se lancer lorsque l'on
ajoute ou supprime des éléments du dossier, lorsque l'on ferme ou ouvre
la fenêtre du dossier ou lorsque l'on déplace la fenêtre du dossier.

En ce qui concerne le problème spécifique des permissions dont il était
question dans cette enfilade, le script devra modifier les permissions
du ou des fichiers ou du ou des dossier qui seront ajoutés au dossier
cible.
Un script lançant la commande du Terminal « chmod -R a+rw » fait très
bien l'affaire en modifiant les permissions des fichiers et dossiers
qui seraient ajoutés au dossier cible.

Tout ça c'est plutôt facile, la suite l'est un peu moins.

Si le dossier cible contient déjà des sous-dossiers avant l'attachement
du script modifiant les permissions, l'ajout d'un élément dans un de
ces sous-dossiers ne sera pas "victime" du script puisque le script
attaché au dossier cible n'est pas attaché à ses sous-dossiers et donc 
n'agit pas sur les sous-dossiers qu'il contient.
Il faut donc créer un nouveau script, un script de propagation qui
attachera aux anciens sous-dossiers le script de modification des
permissions.

De plus, si l'on crée un nouveau sous-dossier dans le dossier cible, ce
sous-dossier ne sera pas non plus nanti de ce script modifiant les
permissions… Il faut donc créer un 3ème script qui automatisera la
propagation du script modifiant les permissions pour que les
sous-dossiers créés ou ajoutés soient automatiquement nantis de ce
script. Mais il faut aussi que ce 3ème script soit rattaché aux nouveau
sous-dossiers pour qu'il n'y ait pas de problème en cas de création ou
d'ajout d'un sous-dossier à un sous-dossier : le 3ème script doit donc
attacher automatiquement le script modifiant les permissions et
lui-même aux nouveaux sous-dossiers mais également aux sous-dossiers
qui existaient déjà pour que l'ajout d'un sous-dossier dans un de ces
sous-dossiers soient munis des scripts…
Le script de propagation cité plus haut doit donc lui aussi attacher ce 
3ème script au dossier cible et à tous les sous-dossiers qu'il contient 
au départ.

Est-ce que tu vois comment ça peut se dérouler :
- un script modifiant les permissions des éléments ajoutés au dossier
cible ;
- un script attachant le script précédent et s'attachant lui-même à tout 
nouveau sous-dossier créé ou ajouté au dossier cible ;
- un script initial de propagation qui attache au dossier cible et à 
chacun de ses sous-dossier les deux scripts précédents.

Si ça t'intéresse, je mets à ta disposition les scripts ad hoc.

-- 
Michel VAUQUOIS - <http://michelvauquois.fr>

Back to fr.comp.sys.mac.programmation | Previous | NextNext in thread | Find similar


Thread

Actions de dossier (was: [Q - OS 10.13] Pb d'autorisations) M.V. <mv@gmail.com.invalid> - 2021-01-02 16:19 +0000
  Re: Actions de dossier Benoit <benoit@com.invalid> - 2021-01-02 17:20 +0000
    Re: Actions de dossier M.V. <mv@gmail.com.invalid> - 2021-01-02 19:02 +0000
      Re: Actions de dossier Benoit <benoit@com.invalid> - 2021-01-02 20:52 +0000
        Re: Actions de dossier M.V. <mv@gmail.com.invalid> - 2021-01-03 09:59 +0000
          Re: Actions de dossier Benoit <benoit@com.invalid> - 2021-01-03 16:45 +0000
            Re: Actions de dossier M.V. <mv@gmail.com.invalid> - 2021-01-03 19:12 +0000
              Re: Actions de dossier Benoit <benoit@com.invalid> - 2021-01-03 20:33 +0000
                Re: Actions de dossier M.V. <mv@gmail.com.invalid> - 2021-01-04 16:29 +0000
                Re: Actions de dossier Benoit <benoit@com.invalid> - 2021-01-04 17:49 +0000
                Re: Actions de dossier M.V. <mv@gmail.com.invalid> - 2021-01-04 19:52 +0000
                Re: Actions de dossier Benoit <benoit@com.invalid> - 2021-01-04 21:05 +0000
                Re: Actions de dossier M.V. <mv@gmail.com.invalid> - 2021-01-12 11:38 +0000
                Re: Actions de dossier Benoit <benoit@com.invalid> - 2021-01-12 15:32 +0000
                Re: Actions de dossier M.V. <mv@gmail.com.invalid> - 2021-01-12 19:25 +0000
                Re: Actions de dossier Benoit <benoit@com.invalid> - 2021-01-12 22:17 +0000

csiph-web