umask函数-鸿鹄论坛_华为认证h35-211-hcnp-access network题库
我们已说明了与每个文件相关联的9个存取许可权位,在此基础上我们可以说明与每个进程相关联的文件方式创建屏蔽字。umask函数为进程设置文件方式创建屏蔽字,并返回以前的值。(这是少数几个没有出错返回的函数中的一个。)
#include <sys types.h="">
#include <sys stat.h="">
mode_t umask(mode_t cmask);
sys>sys>
返回:以前的文件方式创建屏蔽字
其中,参数cmask由表4-4中的9个常数(S_IRUSR, S_IWUSR等)逐位“或”构成的。在进程创建一个新文件或新目录时,就一定会使用文件方式创建屏蔽字。在文件方式创建屏蔽字中为1的位,在文件mode中的相应位则一定被转成0。实例程序4-3创建了两个文件,创建第一个时,umask值为0,创建第二个时,umask值禁止所有组和其他存取许可权。若运行此程序可得如下结果,从中可见存取许可权是如何设置的。
$ umask
第一次打印当前文件方式创建屏蔽字02
$ a.out
$ ls -1 foo bar
-rw---- 1 stevens 0 Nov 16:23 bar
-rw- 1 stevens 0 Nov 16:23 foo
$ umask
观察文件方式创建屏蔽字是否更改02
实例程序4-3 umask函数实例62
相关下载资源:
这些资源将有助于更好地理解和运用umask函数在实际编程中的应用。
用户评论