os, sys, stat 模块使用
1、设置文件权限:
注意:设置权限之前要导入下面三个模块,否则报错,
import os, sys, stat
os.chmod("/home/a.txt", stat.S_IXGRP) 更改path的权限。mode可以是以下值(使用or)的组合:
os.S_ISUID
os.S_ISGID
os.S_ENFMT
os.S_ISVTX
os.S_IREAD
os.S_IWRITE
os.S_IEXEC
os.S_IRWXU
os.S_IRUSR
os.S_IWUSR
os.S_IXUSR
os.S_IRWXG
os.S_IRGRP
os.S_IWGRP
os.S_IXGRP
os.S_IRWXO
os.S_IROTH
os.S_IWOTH
os.S_IXOTH
R代表读,W代表写,X代表执行权限。USR代表用户,GRP代表组,OTH代表其它
实例:
In [5]: import os, sys, stat
In [6]: os.chmod("/home/a.txt", stat.S_IXGRP)
2、环境变量操作:
os.environ['环境变量名称']='环境变量值' 设置环境变量
实例:
os.environ["user"]="jenkins"
os.environ["user"]
'jenkins'
os.path.expanduser(path) 把path中包含的”~”和”~user”转换成用户目录
实例
os.path.expanduser("~")
'/home/mysql'
os.path.expandvars(path) 根据环境变量的值替换path中包含的”$name”和”${name}”
实例
os.environ["user"]="jenkins"
os.path.expandvars("$user/mysql")
'jenkins/mysql'
3、文件夹操作:
os.path.ismount(path) 判断path所指向的是否是一个挂接点
os.getcwd() 获得当前目录
os.listdir() 获得当前目录下所有文件和文件夹
os.path.isfile("/rubbish/my.cnf") 判断给出的目录是不是一个文件
os.path.isdir("/rubbish/") 判断给出的路径是不是一个文件夹
os.path.isabs("/rubbish/") 判断给出的路径是不是一个绝对路径
os.path.abspath("/home/") 把path转换成绝对路径
os.path.exists("/rubbish/") 判断给出的路径是否存在文件夹
os.path.exists("/rubbish/my.cnf") 判断给出的路径是否存在文件
os.path.split("/rubbish/my.cnf") 把路径下的文件夹和路径下的文件分离开
os.path.splitext("/rubbish/my.cnf") 分离扩展名,以 " . " 为分界线
os.path.dirname("/rubbish/my.cnf") 只获取目录名
os.path.basename("/rubbish/my.cnf") 只获取文件名
os.mkdir("/home/ceshi",stat.S_IXGRP) 创建目录。mode的意义参见os.chmod(),默认是0777
os.makedirs("/test/test1",stat.S_IXGRP) 创建父目录和子目录
os.mknod("/home/a.txt") 创建空文件
os.remove("/rubbish/a.file") 删除文件,不能用于删除目录
os.rmdir("/rubbish/test/") 删除文件夹,不能用于删除文件,这个实例只删除了test文件夹
os.removedirs("/rubbish/test/") 删除一个空目录,(只能删除空的)
shutil.rmtree("/rubbish/website/") 删除一个实目录,这个实例只是删除了website目录
os.chdir("/home") 把当前工作目录切换到home下
os.link(src,dst) 创建硬连接
os.stat("/rubbish/my.cnf") 获取文件属性
4、文件操作:
os.path.getsize(path) 返回path所指向的文件的大小
os.path.getatime(path) 返回path所指向的文件或者目录的最后存取时间。
os.path.getmtime(path) 返回path所指向的文件或者目录的最后修改时间
os.path.getctime(path) 返回path所指向的文件的创建时间
参照文档
http://www.cnblogs.com/tomato0906/articles/4605114.html
https://www.cnblogs.com/hushaojun/p/4533241.html
https://blog.csdn.net/u013247765/article/details/79050947
https://cloud.tencent.com/developer/news/257058
https://blog.csdn.net/stt12345678/article/details/79620471
os, sys, stat 模块使用的更多相关文章
- OS&SYS&Shuti模块
#sys.argv 主要针对脚本可以读取参数 Shuti模块 import shutil f1=open('笔记',encoding='utf-8') f2=open('笔记2','w',enco ...
- Python常用模块os & sys & shutil模块
OS模块 import os ''' os.getcwd() 获取当前工作目录,即当前python脚本工作的目录路径 os.chdir("dirname") 改变当前脚本工作目录: ...
- Day14 Python基础之os/sys/hashlib模块(十二)
os模块 os.getcwd() #获取当前工作路径 os.chdir(‘dirname1/dirname2/dirname3’) #改变当前脚本的工作路径,相当于cmd下的cd os.makedi ...
- python time,random,os,sys,序列化模块
一.time模块 表示时间的三种方式 在Python中,通常有这三种方式来表示时间:时间戳.元组(struct_time).格式化的时间字符串: (1)时间戳(timestamp) :通常来说,时间戳 ...
- time,random,os,sys,序列化模块
一.time模块 表示时间的三种方式 在Python中,通常有这三种方式来表示时间:时间戳.元组(struct_time).格式化的时间字符串: (1)时间戳(timestamp) :通常来说,时间戳 ...
- 常用模块random,time,os,sys,序列化模块
一丶random模块 取随机数的模块 #导入random模块 import random #取随机小数: r = random.random() #取大于零且小于一之间的小数 print(r) #0. ...
- python之模块random,time,os,sys,序列化模块(json,pickle),collection
引入:什么是模块: 一个模块就是一个包含了python定义和声明的文件,文件名就是模块名字加上.py的后缀. 但其实import加载的模块分为四个通用类型. 1.使用python编写的代码(.py ...
- python基础语法11 内置模块time,datatime,random,os,sys,hashlib模块
time模块 在python的三种时间表现形式: 1.时间戳: 给电脑看的. - 自1970-01-01 00:00:00到当前时间,按秒计算,计算了多少秒. 2.格式化时间(Format Strin ...
- 2019-7-18 collections,time,random,os,sys,序列化模块(json和pickle)应用
一.collections模块 1.具名元组:namedtuple(生成可以使用名字来访问元素的tuple) 表示坐标点x为1 y为2的坐标 注意:第二个参数可以传可迭代对象,也可以传字符串,但是字 ...
随机推荐
- Java 建造者模式 简单的理解
建造者模式 这种类型的设计模式属于创建型模式,它提供了一种创建对象的最佳方式,使用多个简单的对象一步一步构建成一个复杂的对象. 意图:将一个复杂的构建与其表示相分离,使得同样的构建过程可以创建不同的表 ...
- Acwing-284-金字塔(区间DP)
链接: https://www.acwing.com/problem/content/description/286/ 题意: 虽然探索金字塔是极其老套的剧情,但是有一队探险家还是到了某金字塔脚下. ...
- JAVA笔记10-抽象类
(1)abstrac关键字类修饰的类是抽象类,用abstract修饰的方法是抽象方法: (2)含有抽象方法的类必须被定义为抽象类: (3)抽象类必须被继承,抽象方法必须被重写(或者将子类也声明为抽象类 ...
- C++:std::map的遍历
for (auto &kv : myMap) { count<<kv.first<<" has value "<<kv.second&l ...
- Flash大文件断点续传功能
一.概述 所谓断点续传,其实只是指下载,也就是要从文件已经下载的地方开始继续下载.在以前版本的HTTP协议是不支持断点的,HTTP/1.1开始就支持了.一般断点下载时才用到Range和Content- ...
- “不是一个有效的Win32应用程序”
造冰箱的大熊猫@cnblogs 2018/10/23 今天在Windows计算机上安装一个应用程序时遇到“不是一个有效的Win32应用程序”错误.原以为是应用程序与操作系统版本兼容问题,或者是应用程序 ...
- Vue成员与指令介绍
一.Vue介绍 1.什么是vue 通过对框架的了解与运用程度,来决定其在整个项目中的应用范围, 可以独立完成前后端分离式web项目的渐进式JavaScript框架 2.为什么要学vue 三大主流框架之 ...
- 论文阅读:ClickNF: a Modular Stack for Custom Network Functions
摘要: 网络功能虚拟化最近允许用等效的软件实现代替专用设备, Click路由器是朝这个方向迈出的第一步,它定义了用于通用数据包处理的模块化平台. 尽管Click具有重大影响,但它不提供本机L4实现,而 ...
- Python GUI教程(六):使用Qt设计师进行窗口布局
本篇介绍使用qt设计师进行GUI窗口的布局管理,主要包含以下内容: 使用Qt设计师布局我们的窗口部件: 垂直布局: 水平布局: 网格布局: 使用间隔: 使用“伙伴”将label标签与窗口部件进行连接. ...
- 分布式-信息方式-ActiveMQ的Destination高级特性3
虚拟destination用来创建逻辑destination,客户端可以通过它来生产和消费消息,它会把消息映射到物理destination. ActiveMQ支持2种方式: 1:虚拟主题(Virtua ...