Linux权限rwx转数字的一个小tips 2016-03-13 #linux #linux权限 #十进制 #二进制
我们知道linux中文件权限分别是-rwx,分别代表无权限、读、写、执行。
权限也可以用数字来表示,比如我们常说的777、755、644等。
从最简单的说起
-
-
代表无权限,用数字表示是 0 -
r
代表读权限,用数字表示是4
-
w
代表写权限,用数字表示是2
-
x
代表执行权限,用数字表示是1
老师讲的转换方式
以前在兄弟连培训的时候,李超老师讲过,一个方法
就是把要给的权限先转换成数字,然后加起来
比如777权限,7=1+2+4,其中1
、2
、4
分别代表执行、读、写。
- 三个7中,第一个7代表文件所属用户对该文件的权限为7(所有权限)
- 第二个7代表文件所属用户组对该文件的权限为7
- 第三个7代表其他用户组对该文件的权限为7
(ps:也就是说任何一个人对该文件都有读写执行权限,所以说嘛~不要随便设置777权限)
自己get到的一个转换方式
假设我们要给一个文件如下权限(所属用户拥有rwx,同用户组和其他用户拥有读和执行):
-rwxr-xr-x
第一个-
代表这是一个文件,如果是目录则会显示d
我们把后面权限的部分拿出来,用二进制来表示,如果有权限用1表示,反之为0
那么这个文件权限转换成了
111 101 101
然后把每个三位数转换成10进制,分别为:
7 5 5
看到755 是不是就明白啦~~
Linux Shell中转换进制
下图是在Linux Shell中二进制转十进制的方法(口算帝绕道!)
文章最后的参考中写了一个各种进制及base64|32转换的相关文章