【发布时间】:2010-07-07 09:52:35
【问题描述】:
假设我创建了一个这样写的文件:
std::ofstream my_file("filename", std::ios_base::out | std::ios_base::trunc);
这个文件的权限是怎么确定的?我有一个程序在夜间运行,大约每分钟生成一次文件——有些是 0644,有些是 0660,我的代码中没有任何东西可以改变它。 (我已经看到一些实现允许第三个参数来设置文件权限 - 我使用的 gcc 4.1.2 似乎不支持这一点)。
【问题讨论】:
-
正如其他人所说,属性取决于umask。既然您说您的代码不会修改文件属性,那么也许其他应用程序会这样做?
-
好的,有道理 - 不确定我的程序在做什么,但我会密切关注它,以防它再次发生。
-
我确实再次看到了我原来的“问题”——我认为这是由于针对同一共享库的稍微不同版本构建和运行我的应用程序造成的,这开始导致其他奇怪的事情发生。我仍然认为这个问题值得问:)