一、函数声明
#include <sys/types.h>
#include <sys/stat.h>
mode_t umask(mode_t mask);
umask() sets the calling process’s file mode creation mask (umask) to mask & 0777
The umask is used by open(2), mkdir(2), and other system calls that create files to modify the permissions placed on newly created files or directories.即所有改变权限或者使用权限的地方,都会用到umask设置的屏蔽位。也就是例如umask了S_IXOTH那么该进程创建,(文件、文件夹)。都无法让文件或文件夹获得S_IXOTH。
【简单说就是,只要S_IXOTH设置了屏蔽位置1,这一位在创建文件或文件夹时都不会为1】如果用chmod去改变文件权限是可以成功,并不受umask影响的
二、实例
#include <unistd.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <fcntl.h>
#include <stdio.h>
#include <stdlib.h>
int main(int argc,