Обратите внимание, что в POSIX (Unix, Linux, MacOS и т. Д.) Вы можете открыть и создать файл с любыми разрешениями, которые вы выберете, в том числе 0 (без разрешения для кого-либо), и при этом по-прежнему выполнять запись в файл, если он открыт для записи.

у программу, которая записывает вывод в файл. Если этот файл не существует, я хочу его создать.

В настоящее время я использую следующие флаги при вызове open: O_WRONLY | O_CREATE

Однако, когда он создает файл, он не дает мне никаких прав на запись в него ...

Как я могу использовать open, чтобы он создал файл, если он не существует, но создаст его с необходимыми разрешениями при необходимости?

Спасибо!

Ответы на вопрос(5)

Ваш ответ на вопрос