【问题标题】:What permissions does a file written with fstream have?用 fstream 写的文件有什么权限?
【发布时间】: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。既然您说您的代码不会修改文件属性,那么也许其他应用程序会这样做?
  • 好的,有道理 - 不确定我的程序在做什么,但我会密切关注它,以防它再次发生。
  • 我确实再次看到了我原来的“问题”——我认为这是由于针对同一共享库的稍微不同版本构建和运行我的应用程序造成的,这开始导致其他奇怪的事情发生。我仍然认为这个问题值得问:)

标签: c++ linux stl fstream


【解决方案1】:

这取决于umask

【讨论】:

    【解决方案2】:

    默认属性是使用umask 命令设置的。它没有解释您的文件属性更改,但仍然可能对您有用

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2013-04-21
      • 1970-01-01
      • 2021-06-21
      • 1970-01-01
      • 2020-12-12
      • 2017-02-04
      • 1970-01-01
      • 2014-06-06
      相关资源
      最近更新 更多