Python之OS模块函数

Python中的os模块提供了操作系统相关功能的函数,可以更加方便的在python脚本中对linux的文件目录的处理和shell的应用。

os.system("bash")

运行shell命令,直接显示

1#应用ls命令查看当前目录下的文件>>> import os 2>>> print(os.system('ls')) 3alien_invasion.py anzhaung.py mpl_squares.py Python-3.6.3 Python-3.6.3.tgz Python-3.6.3.tgz.1 root.py 4>>>

os.environ

获取环境变量

1>>> print(os.environ) 2{'MAVEN_HOME': '/usr/local/maven', 'LESSOPEN': '||/usr/bin/lesspipe.sh %s', 'SSH_CLIENT': '1.202.148.250 55342 22', 'LOGNAME': 'root', 'USER': 'root', 'PATH': '/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin: 3.......... 4>>>

os.getcwd()

获取当前工作目录,即当前python脚本工作的目录路径

1>>> print(os.getcwd()) 2/home/feiji 3>>>

os.chdir()

修改当前脚本的工作目录,相当于cd

1>>> os.chdir("/home") 2>>> print(os.getcwd()) 3/home 4>>>

os.curdir

返回当前目录 ‘.’   我理解的是上面用os.chdir修改了工作目录,这里返回的话应该是/home/feiji才对,但是确实/home

1>>> os.curdir 2'.' 3>>> print(os.getcwd()) 4/home

os.makedirs('目录1/目录2')

生成多层递归目录相当于 mkdir -r

1>>> os.makedirs('new1/new2') 2>>> print(os.system('ls')) 31.sh 3.sh 5.sh admin b.sh feiji funcation.sh jq.sh user_00 user_02 user_04 user_06 user_08 user_10 user_12 user_14 user_16 user_18 user_20 42.sh 47.98.190.211 abc a.tex error.log free.sh jdk-8u131-linux-x64.rpm new1 5>>>

os.mkdir('新目录')

生成单层新目录

1>>> os.mkdir('new2') 2>>> print(os.system('ls')) 31.sh 47.98.190.211 admin error.log funcation.sh new1 user_01 user_04 user_07 user_10 user_13 user_16 user_19 42.sh 5.sh a.tex feiji jdk-8u131-linux-x64.rpm new2 5 6>>>

os.removedirs('')

删除多层目录,可以看到上面建立的/new1/new2没有了  注意:只有目录为空时才删除

1>>> os.removedirs('/home/new1/new2') 2>>> print(os.system('ls')) 31.sh 3.sh 5.sh admin b.sh feiji funcation.sh jq.sh user_00 user_02 user_04 user_06 user_08 user_10 user_12 user_14 user_16 user_18 user_20 42.sh 47.98.190.211 abc a.tex error.log free.sh jdk-8u131-linux-x64.rpm new2 5>>>

os.rmdir('')

删除单层目录

1>>> print(os.rmdir('new2')) 2None

os.remove('')

删除一个文件

1>>> print(os.remove('1.sh')) 2None

os.listdir('')

列出指定目录下的文件和目录

1>>> print(os.listdir('feiji')) 2['alien_invasion.py', 'anzhaung.py', 'Python-3.6.3', 'root.py', 'Python-3.6.3.tgz.1', 'mpl_squares.py', 'Python-3.6.3.tgz'] 3>>>

os.rename('old','new')

重命名文件或目录

>>> os.rename('2.sh','22.sh')

os.stat('')

查看文件或目录属性信息

1>>> os.stat('22.sh') 2posix.stat_result(st_mode=33188, st_ino=401743, st_dev=64769L, st_nlink=1, st_uid=0, st_gid=0, st_size=335, st_atime=1564478716, st_mtime=1564478715, st_ctime=1569487383)
点赞
收藏

评论区

加载中...

相关推荐

MySQL:[Err] 1292 - Incorrect datetime value: ‘0000-00-00 00:00:00‘ for column ‘CREATE_TIME‘ at row 1

文章目录问题用navicat导入数据时,报错:原因这是因为当前的MySQL不支持datetime为0的情况。解决修改sql\mode:sql\mode:SQLMode定义了MySQL应支持的SQL语法、数据校验等,这样可以更容易地在不同的环境中使用MySQL。全局s

Oracle 分组与拼接字符串同时使用

SELECTT.,ROWNUMIDFROM(SELECTT.EMPLID,T.NAME,T.BU,T.REALDEPART,T.FORMATDATE,SUM(T.S0)S0,MAX(UPDATETIME)CREATETIME,LISTAGG(TOCHAR(

皕杰报表之UUID

​在我们用皕杰报表工具设计填报报表时,如何在新增行里自动增加id呢?能新增整数排序id吗?目前可以在新增行里自动增加id,但只能用uuid函数增加UUID编码,不能新增整数排序id。uuid函数说明:获取一个UUID,可以在填报表中用来创建数据ID语法:uuid()或uuid(sep)参数说明:sep布尔值,生成的uuid中是否包含分隔符'',缺省为

手写Java HashMap源码

HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22

2020年前端实用代码段,为你的工作保驾护航

有空的时候,自己总结了几个代码段,在开发中也经常使用,谢谢。1、使用解构获取json数据let jsonData  id: 1,status: "OK",data: 'a', 'b';let  id, status, data: number   jsonData;console.log(id, status, number )

Python3:sqlalchemy对mysql数据库操作,非sql语句

Python3:sqlalchemy对mysql数据库操作,非sql语句python3authorlizmdatetime2018020110:00:00coding:utf8'''