Linux 中文件属性以及文件权限
可以看到列出了当前目录下的所有文件,包括权限信息,所属用户,日期和文件名,其它很好理解但是看到 -rwxrwxr-x 这一串字符的时候完全是懵逼状态的,我是谁?我在哪?我要干什么?😆先来对里面的字符一步步拆分吧。
首先第一个字符用来标识是文件还是目录,这里只列出两个有代表性的:
然后在接下来的剩余字符中,以三个为一组,且均为『rwx』 的三个参数的组合。其中,[ r ] 代表可读 (read)、[ w ] 代表可写 (write)、[ x ] 代表可执行 (execute)。我们知道,在 Linux 中,文件的基本权限就有九个,分别是
owner/group/others 三种身份各有自己的 read/write/execute 权限。那我们就明白了,并且可以得出结论:
我们如果想要查看单个文件的默认权限可以使用命令: ls -al 文件名
可以看到文件 hello.c 的默认权限为 -rwxr-xr-- ,要改变它的权限为 rwxrwxr-x ,我们可以使用 chmod 命令,有两种方法设置方法:
1、符号类型改变文件权限: chmod u=rwx,g=rwx,o=rx 文件名
从上示例中可以看到 hello.c 的权限已经变成 rwxrwxr-x 。
2、数字类型改变文件权限,各权限的分数对照表如下:
每种身份(owner/group/others)各自的三个权限(r/w/x)分数是需要累加的,例如当权限为: [-rwxrwx---] 分数则是:
变更权限的指令 chmod 的语法是这样的:
选项与参数:
如果要将 hello.c 的所有权限都启用,那么可以这样:
一顿操作猛如虎, hello.c 的文件权限变更为 rwxrwxrwx ,😆美滋滋。
刚接触 Linux,如果有写得不对的地方,希望能指出,一起交流,一起学习😯。