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的坐标 注意:第二个参数可以传可迭代对象,也可以传字符串,但是字 ...
随机推荐
- ora 12518监听程序无法分发客户机连接
首先修改ORACLE的PROCESS.SESSION数量 查看当前ORALCE PROCESS数量 SQL> show parameter process 查看当前ORALCE SESSION数 ...
- CodeForces - 1209F Koala and Notebook(拆边+BFS)
题意:给定一个n个点m条边的无向图,边权分别为1-m,从起点1出发,每经过一条边就把边权以字符串的形式加入末尾,求到达其他每个点的最小字符串(长度不同的短的更小,否则字典序小的更小). 思路很巧妙,将 ...
- MyEclipse导航代码第二弹,Java开发更便捷
[MyEclipse CI 2019.4.0安装包下载] 无论是在文件之间导航还是在文件中导航,都可以使用大量导航工具来加快工作流程.目前这些导航工具可在MyEclipse,CodeMix中使用. 单 ...
- Acwing-91-最短Hamilton路径(状压DP)
链接: https://www.acwing.com/problem/content/93/ 题意: 给定一张 n 个点的带权无向图,点从 0~n-1 标号,求起点 0 到终点 n-1 的最短Hami ...
- spark读取hbase(NewHadoopAPI 例子)
package cn.piesat.controller import java.text.{DecimalFormat, SimpleDateFormat}import java.utilimpor ...
- C# 计时函数(毫秒)
using System; using System.Diagnostics; using System.Runtime.InteropServices; using System.Threading ...
- C# 遍历控件名称
List<string> list = new List<string>(); list.Add("textBox2"); list.Add("t ...
- Java多线程和并发(一),进程与线程的区别
目录 1.进程和线程的由来 2.进程和线程的定义 3.进程和线程的区别 一.进程和线程的区别 1.进程和线程的由来 2.进程和线程的定义 进程是资源分配的最小单位,线程是CPU调度的最小单位 3.进程 ...
- BZOJ 3173: [Tjoi2013]最长上升子序列 Splay
一眼切~ 重点是按照 $1$~$n$ 的顺序插入每一个数,这样的话就简单了. #include <cstdio> #include <algorithm> #define N ...
- CentOS版本禁用Ctrl+Alt+Del重启功能
1 禁用Ctrl+Alt+Del重启功能(不重启系统的前提条件) 1.1 CentOS 6 ##查看/etc/inittab确认Ctrl+Alt+Del相关配置文件 cat /etc/initta ...