欢迎光临
我们一直在努力

Linux C 创建目录函数mkdir的mode设置问题(linux c 创建目录失败)

函数原型:


#include <sys/stat.h>


int mkdir(const char *path, mode_t mode);


参数:


path是目录名


mode是目录权限


返回值:


返回0 表示成功, 返回 -1表示错误,并且会设置errno值。


mode模式位:


mode 表示新目录的权限,可以取以下值:


S_IRUSR
S_IREAD


S_IWUSR
S_IWRITE
S_IXUSR
S_IEXEC
S_IRWXU
This is equivalent to (S_IRUSR | S_IWUSR | S_IXUSR).
S_IRGRP
Read permission bit for the group owner of the file. Usually 040.
S_IWGRP
Write permission bit for the group owner of the file. Usually 020.
S_IXGRP
Execute or search permission bit for the group owner of the file. Usually 010.
S_IRWXG
This is equivalent to (S_IRGRP | S_IWGRP | S_IXGRP).
S_IROTH
Read permission bit for other users. Usually 04.
S_IWOTH
Write permission bit for other users. Usually 02.
S_IXOTH
Execute or search permission bit for other users. Usually 01.
S_IRWXO
This is equivalent to (S_IROTH | S_IWOTH | S_IXOTH).
S_ISUID
This is the set-user-ID on execute bit, usually 04000. See How Change Persona.
S_ISGID
This is the set-group-ID on execute bit, usually 02000. See How Change Persona.
S_ISVTX
This is the sticky bit, usually 01000.


例子:


#include <sys/types.h> #include <sys/stat.h>
int status;


status = mkdir(“/home/newdir”, S_IRWXU | S_IRWXG | S_IROTH | S_IXOTH);


这样就创建了一个newdir目录,权限通过ls -al 查看为


drwxr-xr-x


跟用linux命令mkdir创建的目录权限位一致。

本文从互联网转载,来源地址:www.downzz.com/shell/17368.html,原作者保留一切权利,若侵权或引用不当,请联系九八云(cmy.cn)删除。【九八云,优质云服务器提供商】

赞(0)
【声明】:本博客不参与任何交易,也非中介,仅记录个人感兴趣的主机测评结果和优惠活动,内容均不作直接、间接、法定、约定的保证。访问本博客请务必遵守有关互联网的相关法律、规定与规则。一旦您访问本博客,即表示您已经知晓并接受了此声明通告。