python修改linux中文件(文件夹)的权限属性操作


Posted in Python onMarch 05, 2020

今天生成的对流云团路径图片放在linux下,文件的权限都是rw,没有x,后续的别人的程序调用不了,这里附上对三个属性的简单解释,有不够的欢迎大家补充

Linux的权限不是很细致,只有RWX三种

r(Read,读取):对文件而言,具有读取文件内容的权限;对目录来说,具有浏览目录的权限。

w(Write,写入):对文件而言,具有新增,修改,删除文件内容的权限;对目录来说,具有新建,删除,修改,移动目录内文件的权限。

x(eXecute,执行):对文件而言,具有执行文件的权限;对目录了来说该用户具有进入目录的权限。

1、目录的只读访问不允许使用cd进入目录,必须要有执行的权限才能进入。

2、只有执行权限只能进入目录,不能看到目录下的内容,要想看到目录下的文件名和目录名,需要可读权限。

3、一个文件能不能被删除,主要看该文件所在的目录对用户是否具有写权限,如果目录对用户没有写权限,则该目录下的所有文件都不能被删除,文件所有者除外

4、目录的w位不设置,即使你拥有目录中某文件的w权限也不能写该文件

好了话归正题,下面是重点了:

os.chmod(path,mode) 这个方法应该很简单,只需要2个参数,一个是路径,一个是说明路径的模式,

下面列出了这个用法中可以使用的一些常用的模式:

stat.S_ISUID: Set user ID on execution. 不常用

stat.S_ISGID: Set group ID on execution. 不常用

stat.S_ENFMT: Record locking enforced. 不常用

stat.S_ISVTX: Save text image after execution. 在执行之后保存文字和图片

stat.S_IREAD: Read by owner. 对于拥有者读的权限

stat.S_IWRITE: Write by owner. 对于拥有者写的权限

stat.S_IEXEC: Execute by owner. 对于拥有者执行的权限

stat.S_IRWXU: Read, write, and execute by owner. 对于拥有者读写执行的权限

stat.S_IRUSR: Read by owner. 对于拥有者读的权限

stat.S_IWUSR: Write by owner. 对于拥有者写的权限

stat.S_IXUSR: Execute by owner. 对于拥有者执行的权限

stat.S_IRWXG: Read, write, and execute by group. 对于同组的人读写执行的权限

stat.S_IRGRP: Read by group. 对于同组读的权限

stat.S_IWGRP: Write by group. 对于同组写的权限

stat.S_IXGRP: Execute by group. 对于同组执行的权限

stat.S_IRWXO: Read, write, and execute by others. 对于其他组读写执行的权限

stat.S_IROTH: Read by others. 对于其他组读的权限

stat.S_IWOTH: Write by others. 对于其他组写的权限

stat.S_IXOTH: Execute by others. 对于其他组执行的权限

下面是例子:

import os,stat   
os.chmod('abc',stat.S_IREAD)  
os.chmod('abc',stat.S_IREAD+stat.S_IWOTH)
os.chmod(outputpath,stat.S_IRWXO+stat.S_IRWXG+stat.S_IRWXU)

最后一行当时设置的时候我连写了三行,每一行分别写一个参数,得到的结果分别是-------rwx,----rwx---,-rwx------,真是被自己的愚蠢打败了哈哈哈,用加号就能得到-rwxrwxrwx,就是要把user,group和others分别设置加起来。

补充知识:linux下python代码只在文件目录下才能调用,在其他路径输入绝对路径不能执行

没想到python代码放到linux下会碰到这么多事,在代码所在的目录下就可以执行,然后跳出一层,用绝对路径就不能调用,应该是代码中用到了相对路径,但是你当前的相对路径并不在文件所在目录,所以并不能成功调用,大概是这个样子。

下面是解决方案:

par_dir = os.path.dirname(os.path.abspath(__file__))
os.chdir(par_dir)

也是技术大哥传授的姿势~

os.path.abspath(__file__)求出文件所在的绝对路径,具体到文件的名.py。通过os.path.dirname求出文件所在的目录地址,再通过os.chdir来吧当前路径切换到文件所在的路径,就可以了。

以上这篇python修改linux中文件(文件夹)的权限属性操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python base64 decode incorrect padding错误解决方法
Jan 08 Python
使用python实现正则匹配检索远端FTP目录下的文件
Mar 25 Python
使用Protocol Buffers的C语言拓展提速Python程序的示例
Apr 16 Python
Ubuntu 16.04 LTS中源码安装Python 3.6.0的方法教程
Dec 27 Python
对python中return和print的一些理解
Aug 18 Python
Python入门必须知道的11个知识点
Mar 21 Python
基于pandas数据样本行列选取的方法
Apr 20 Python
详解python解压压缩包的五种方法
Jul 05 Python
Mac安装python3的方法步骤
Aug 09 Python
Python中私有属性的定义方式
Mar 05 Python
查看keras各种网络结构各层的名字方式
Jun 11 Python
python xlwt模块的使用解析
Apr 13 Python
Python实现在Windows平台修改文件属性
Mar 05 #Python
Pycharm最常用的快捷键及使用技巧
Mar 05 #Python
Python 去除字符串中指定字符串
Mar 05 #Python
Python脚本去除文件的只读性操作
Mar 05 #Python
Python IDE环境之 新版Pycharm安装详细教程
Mar 05 #Python
Python Handler处理器和自定义Opener原理详解
Mar 05 #Python
Python使用进程Process模块管理资源
Mar 05 #Python
You might like
Zend Framework分页类用法详解
2016/03/22 PHP
Ubuntu 16.04下安装PHP 7过程详解
2017/03/28 PHP
PHP实现随机发扑克牌
2020/04/22 PHP
javascript编程起步(第五课)
2007/02/27 Javascript
多浏览器支持的右下角浮动窗口
2010/04/01 Javascript
解决window.opener=null;window.close(),只支持IE6不支持IE7,IE8的问题
2014/01/14 Javascript
IE浏览器中图片onload事件无效的解决方法
2014/04/29 Javascript
jquery实现将获取的颜色值转换为十六进制形式的方法
2014/12/20 Javascript
前端性能优化及技巧
2016/05/06 Javascript
完美JQuery图片切换效果的简单实现
2016/07/21 Javascript
利用jqprint插件打印页面内容的实现方法
2018/01/09 Javascript
Vue filter介绍及详细使用
2018/04/04 Javascript
React路由管理之React Router总结
2018/05/10 Javascript
微信小程序实现左右联动的实战记录
2018/07/05 Javascript
js获取对象,数组所有属性键值(key)和对应值(value)的方法示例
2019/06/19 Javascript
layui 实现二级弹窗弹出之后 关闭一级弹窗的方法
2019/09/18 Javascript
JavaScript编写开发动态时钟
2020/07/29 Javascript
three.js 利用uv和ThreeBSP制作一个快递柜功能
2020/08/18 Javascript
[00:21]DOTA2亚洲邀请赛 Logo演绎
2015/02/07 DOTA
[49:17]DOTA2-DPC中国联赛 正赛 Phoenix vs Dynasty BO3 第三场 1月26日
2021/03/11 DOTA
Python3 中把txt数据文件读入到矩阵中的方法
2018/04/27 Python
python seaborn heatmap可视化相关性矩阵实例
2020/06/03 Python
海淘零差价,宝贝全球购: 宝贝格子
2016/08/24 全球购物
KIKO MILANO英国官网:意大利知名化妆品和护肤品品牌
2017/09/25 全球购物
KENZO官网:高田贤三在法国创立的品牌
2019/05/16 全球购物
捷克母婴用品购物网站:Feedo.cz
2020/12/28 全球购物
中科软笔试题和面试题
2014/10/07 面试题
秋季运动会广播稿大全
2014/02/17 职场文书
和谐家庭事迹材料
2014/12/20 职场文书
2015年法务工作总结范文
2015/05/23 职场文书
小学教代会开幕词
2016/03/04 职场文书
Mysql 如何批量插入数据
2021/04/06 MySQL
JS Object构造函数之Object.freeze
2021/04/28 Javascript
使用Pytorch实现two-head(多输出)模型的操作
2021/05/28 Python
mysql获取指定时间段中所有日期或月份的语句(不设存储过程,不加表)
2021/06/18 MySQL
Python实现位图分割的效果
2021/11/20 Python