Puis-je modifier les autorisations de fichier par défaut lors de l'utilisation de la fonction store
de Storable?Comment puis-je modifier les autorisations de fichiers par défaut dans Storable?
Répondre
Il y a plusieurs approches différentes à cela. (Bien sûr, il y a, il est Perl :-))
Première option: utiliser sysopen()
pour créer le fichier avec les autorisations spécifiées, puis utilisez store_fd()
et fd_retrieve()
. Voir aussi le Perl open() tutorial, en particulier la section "Permissions à la mode".
Deuxième option: utilisez umask()
pour limiter les autorisations de fichier. N'oubliez pas de le remettre à sa valeur d'origine si vous travaillez avec plusieurs fichiers.
Troisième option: utilisez chmod()
pour définir les autorisations de fichier manuellement sur un fichier préexistant.
La première option est conceptuellement meilleure car elle permet à l'utilisateur de resserrer davantage les permissions en contrôlant lui-même le umask. (Essayez help umask
à l'invite du shell L'ensemble umask appliqué à tous les programmes exécutés à partir de l'interpréteur de commandes.A nouveau, voir perlopentut.)
Je connais certaines de vos approches. Mais je suis intéressé, si je peux le faire avec la fonction de magasin ou en définissant des options stockables. –
Je vais utiliser chmod(); ce n'est pas beaucoup de travail supplémentaire. –
J'ai changé d'avis: je vais essayer avec sysopen(); –