Как изменить права доступа к файлам по умолчанию в Storable?

Могу ли я как-то изменить права доступа к файлам по умолчанию при использовании store функция из Storable?

1 ответ

Решение

Есть несколько разных подходов к этому. (Конечно, есть; это Perl:-))

Первый вариант: использовать sysopen() создать файл с указанными разрешениями, затем использовать store_fd() а также fd_retrieve(), См. Также учебник по Perl open(), в частности, раздел "Permissions a la mode".

Второй вариант: использовать umask() ограничить права доступа к файлу. Не забудьте вернуть его первоначальное значение, если вы работаете с несколькими файлами.

Третий вариант: использовать chmod() установить права доступа к файлу вручную для уже существующего файла.

Первый вариант концептуально лучше, потому что он позволяет пользователю еще больше сузить разрешения, контролируя сами маски. (Пытаться help umask по приглашению оболочки. Набор umask применяется ко всем программам, запускаемым из оболочки. Снова смотри перлопентут.)

Другие вопросы по тегам