免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 5702 | 回复: 3
打印 上一主题 下一主题

如何得到文件的755这种权限 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2011-07-14 18:01 |只看该作者 |倒序浏览
有的文件是644 有的是755 如何得到这个值,用python
os.stat 里面得到的的st_mode这个值有点莫名其妙,不知所云阿
哪位知道有什么办法?我知道subprocess可以,但是我不是这个意思

论坛徽章:
0
2 [报告]
发表于 2011-07-14 18:52 |只看该作者
回复 1# rockyaow
stat.S_IMODE(os.stat(filename).st_mode)可以得到权限位,不过是十进制表示的,想得到这样的八进制表示 自己转换一下就行了。

论坛徽章:
0
3 [报告]
发表于 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:

论坛徽章:
0
4 [报告]
发表于 2011-07-15 11:41 |只看该作者
493那个数,再用OCT() 转换一下就出来了,多谢提醒!!!
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP