keywords : stat access chmod chown chgrp bit mask umask

十年热恋 提交于 2019-12-15 04:34:36

stat 可以是一个函数进行使用,也是一个linux内核中的一个api
man 2 stat里面就展示了它的描述

These functions return information about a file, in the buffer pointed
to by statbuf.

stat 就是用来 返回文件的各种信息的
在terminal里面直接stat + 文件的话就显示了文件的各种信息,会看到有access,
接着说access,access的话也有几个mode位,F_OK、R_OK、W_OK、X_OK,返回值0是可以,-1是不行。
然后基本的话可以自己通过man手册看这些api的原型然后在程序里面自己实现一次,大概就懂了。
chmod 就是用来改这个文件的权限的,分属主 组 其他这三个
学习的时候主要是没看懂chmod里面的bit mask 后来慢慢的懂了,竖着来看分三组,4转换成2进制就是100、2的话就是010、1的话就是1,这不就是对应了之前将的mode未到rwx对应421咩,这样看就懂了。
chown是改变文件的属主权限的,比如之前在czp这个属主的,现在可以chown root 1.txt 这样
至于chgrp也是一样的理解

最后讲了一下umask
在terminal里面直接umask可以查看当前的umask是多少,当然也可以umask 0044这样去设置,0044转换成2进制就是100 100 然后呢实际新建的文件就会本来是rwx rwx 也就是111 111的,然后减掉你umask的100 100 ,最后得到的只有011 011,所以只有可写可执行,没有可读的权限了,但是实际操作过程中呢,这个x是不存在的,新建文件的时候只有r跟w的权限。反正大概意思差不多。
时间来不及,明天中午再好好丰富这篇东西,不然成了口水仗了。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!