1

我是 OSX 开发的新手,我需要你的帮助。

我正在尝试使用我用 C++ 编写的 OSX 应用程序中的 mkdir 在 /private/var/tmp 上创建文件夹。我在 OSX 10.6 上使用 XCode 3.2.6。该命令运行良好。该文件夹在路径 /private/var/tmp 中创建。

这就是我在应用程序中所做的:mkdir(my_path, 0777);

但是我的文件夹权限有问题。用户可以修改文件夹(在里面创建另一个文件夹等),但不能修改“everyone”或“wheel”。

在此处输入图像描述

翻译 :

  • 莫伊->我
  • Lecture et écriture -> 读写
  • Lecture seulement -> 只读

我尝试从终端创建文件夹,我输入 mkdir -m 777 /private/var/tmp/ test并且文件夹test具有良好的权限:

在此处输入图像描述

翻译 :

  • 莫伊->我
  • Lecture et écriture -> 读写

我的问题是,我怎样才能对文件夹和我的 OSX 应用程序进行写权限。

谢谢你。

4

1 回答 1

1

根据SUIS

mkdir() 函数将创建一个名为 path 的新目录。新目录的文件权限位应从 mode 初始化。mode 参数的这些文件权限位应由进程的文件创建掩码修改。

原因是为您的系统定义的默认umask 。

因此,您只需在调用 mkdir 或调用chown之前从进程中更新umask即可更新已创建文件夹的属性。

于 2013-01-14T09:04:22.813 回答