linux 中open()函数详解及简单实例
open()函数创建文件时便捷的权限设置
头文件
#include#include #include
函数原型
intopen(constchar*pathname,intflags); intopen(constchar*pathname,intflags,mode_tmode);
当flags参数包含O_REEAT时,需要对mode参数进行指定
- S_IRWXU,00700权限,代表该文件所有者具有可读、可写及可执行的权限。
- S_IRUSR或S_IREAD,00400权限,代表该文件所有者具有可读取的权限。
- S_IWUSR或S_IWRITE,00200权限,代表该文件所有者具有可写入的权限。
- S_IXUSR或S_IEXEC,00100权限,代表该文件所有者具有可执行的权限。
- S_IRWXG00070权限,代表该文件用户组具有可读、可写及可执行的权限。
- S_IRGRP00040权限,代表该文件用户组具有可读的权限。
- S_IWGRP00020权限,代表该文件用户组具有可写入的权限。
- S_IXGRP00010权限,代表该文件用户组具有可执行的权限。
- S_IRWXO00007权限,代表其他用户具有可读、可写及可执行的权限。
- S_IROTH00004权限,代表其他用户具有可读的权限
- S_IWOTH00002权限,代表其他用户具有可写入的权限。
- S_IXOTH00001权限,代表其他用户具有可执行的权限。
第三个参数也可用八进制数字代替,比如0644表示-rw-r–r–
intfd; fd=open("./a.c",O_CREAT,0644);
-rw-r--r--1lytlyt07月1817:12a.c
感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!