2010-11-28 40 views

Répondre

3

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.)

+0

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. –

+0

Je vais utiliser chmod(); ce n'est pas beaucoup de travail supplémentaire. –

+0

J'ai changé d'avis: je vais essayer avec sysopen(); –