问题描述
我测试了的mkdir
函数来创建一个新的目录:
I am testing the mkdir
function to create a new directory:
folder = mkdir("./linux", 511);
或
folder = mkdir("./linux", 0777);
或
folder = mkdir("./linux", S_IRWXU | S_IRWXG | S_IRWXO);
正如你所看到的,我尝试授权完全权限的目录,但这里是用 ls -l命令来了| linux下的grep
:
drwxr-xr-x 2 manuzhang manuzhang 4096 2012-01-04 06:53 linux
我为什么不能授权写权限组和其他?
why can't I authorize write permission for group and others?
更新:结果
奇怪的事情,因为你们告诉我,我试过的umask
。它适用于任何的umask(S_IWGRP)
或的umask(S_IWOTH)
,但失败与的umask?(S_IWGRP | S_IWOTH)
,任何想法
Updates:
weird thing, as you guys told me I tried umask
. It works with either umask(S_IWGRP)
or umask(S_IWOTH)
but fails with umask(S_IWGRP | S_IWOTH)
, any ideas?
推荐答案
从 2人MKDIR
:
参数模式指定要使用的权限。它是由过程的umask以通常的方式修改:创建的目录的权限是(模式&放大器;〜umask的&放大器; 0777)
我建议你看一下你的umask - 这可能是设置为 0022
。尝试搭配chmod
后 - 的mkdir
I suggest you look at your umask - it is probably set to 0022
. Try a chmod
post-mkdir
.
这篇关于linux下的mkdir功能不能授权完全权限的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!