Chinaunix

标题: 如何得到文件的755这种权限 [打印本页]

作者: rockyaow    时间: 2011-07-14 18:01
标题: 如何得到文件的755这种权限
有的文件是644 有的是755 如何得到这个值,用python
os.stat 里面得到的的st_mode这个值有点莫名其妙,不知所云阿
哪位知道有什么办法?我知道subprocess可以,但是我不是这个意思
作者: 106033177    时间: 2011-07-14 18:52
回复 1# rockyaow
stat.S_IMODE(os.stat(filename).st_mode)可以得到权限位,不过是十进制表示的,想得到这样的八进制表示 自己转换一下就行了。
作者: 清潼止水    时间: 2011-07-14 19:03
>>> commands.getoutput('ls -l file')
'-rwxr-xr-x 1 root root 0 Jul 13 15:13 file'
>>> stat.S_IMODE(os.stat('file').st_mode)
493


493 是个十进制数, 转换成 二进制 就是 111 101 101 ,也就是 755

还有 比如 想知道  组 有没有 执行 权限 ,可以:
>>> stat.S_IMODE(os.stat('file').st_mode) & stat.S_IXGRP
8

结果是 8  , 不为 0,就表示 组 有执行权限


我知道的就这么多,希望高手补充:wink:
作者: rockyaow    时间: 2011-07-15 11:41
493那个数,再用OCT() 转换一下就出来了,多谢提醒!!!




欢迎光临 Chinaunix (http://bbs.chinaunix.net/) Powered by Discuz! X3.2