os

os.getcwd()

os.getcwd()     # 获取当前工作目录

os.listdir(path)

os.listdir('/tmp')      # 列出指定目录下的文件和目录

os.mkdir(path [, mode=0777])

os.mkdir('/tmp/newtest')    #  创建新目录
os.mkdir('/tmp/ntest/test/test')    # 无法递归创建.  

os.rmdir(path)

os.rmdir('/tmp/newtest')    # 删除**空**目录  

os.remove(path)

os.remove('/tmp/newtest/readne.md')     # 删除指定*文件* ,而非目录

os.rename(src,dst)

os.rename("/tmp/newtest/readme.txt", '/tmp/newtest/readme.md')  # 给文件重命名

os.chmod(path,mod)

os.chmod('/tmp/newtest/readme.md', 0700) # 修改文件的权限, mod 为 4 位数字.

os.chown(path,uid,gid)

os.chown('/tmp/20170223/new',502,502)   # 修改文件的属主和属组

os.stat(path)

os.stat('/tmp/20170223/new')  # 查看文件的附加信息, 相当于 `$ls -l`
# 返回结果 :
# posix.stat_result(st_mode=33261, st_ino=141209, st_dev=64768, st_nlink=1, st_uid=502, st_gid=502, st_size=0, st_atime=1487818970, st_mtime=1487818970, st_ctime=1487819520)

os.stat('/tmp/20170223/new').uid
os.stat('/tmp/20170223/new').gid
os.stat('/tmp/20170223/new').mode
os.stat('/tmp/20170223/new').ino
os.stat('/tmp/20170223/new').dev
os.stat('/tmp/20170223/new').nlink
os.stat('/tmp/20170223/new').size
os.stat('/tmp/20170223/new').ctime
os.stat('/tmp/20170223/new').mtime
os.stat('/tmp/20170223/new').atime  

os.symlink(src,dst)

os.symlink('/tmp/20170223/new','/tmp/new')  # 为文件 dst 创建软连接, src 为软连接文件的路径.

os.path

import os.path
path = '/var/run/supervisord/supervisor.sock'

os.path.basename()

os.path.basename(path)      # 返回路径中的文件名 

os.path.dirname()

os.path.dirname(path)       # 返回路径中的目录

os.path.split()

print os.path.split(path)       # 将路径分割为文件名和路径两部分,放在一个元组中返回,  ('/var/run/supervisord', 'supervisor.sock')
path='/var/run/supervisord'     # 为目录
print os.path.split(path)       # ('/var/run', 'supervisord')

os.path.join()

os.path.join('/', 'home', 'tom', 'scripts', 'init.sh')  # '/home/tom/scripts/init.sh'
os.path.join('home', 'tom', 'scripts', 'init.sh')       # 'home/tom/scripts/init.sh'

os.path.commonprefix()

path = '/home/tom/scripts/init.sh'
path2 = '/home/tom/scripts/status.sh'
path3 = 'home/tom/scripts/init.sh'

os.path.commonprefix([path,path2])      # '/home/tom/scripts/'
os.path.commonprefix([path,path3])      # ''

os.path.normpath()

去除路径中的冗余

path = '/home/tom/../.'
os.path.normpath(path)      # '/home'

os.path.exists(path)

判断路径是否存在, 返回 布尔值

os.path.getsize()

返回文件大小, 单位字节

os.path.getatime()

返回文件上一次的读取时间, unix 时间戳

os.path.getmtime()

返回文件上一次的修改时间, unix 时间戳

os.path.isfile()

路径存在, 且是文件

os.path.isdir()

路径存在, 且是目录

获取进程相关信息

os.uname()     # 操作系统先关信息
os.umask()     # umask 权限码
os.get*()
    uid,euid,resuid,gid,egid,resgid : 权限相关, resuid 返回 saved UID.
    pid,pgid,ppod,sid : 进程相关
os.put*()
    edid,egid : 更改 euid,egid
    uid, gid : 改变进程的 uid,gid. 只用 super user 才有权限.( $sudo python )
    pgid,sid : 改变进程所在的进程组和会话.

os.getenviron() : 获得进程的环境变量
os.setenviron() : 更改进程的环境变量

python 标准库 -- os的更多相关文章

  1. Python标准库--os模块

    这个模块包含普遍的操作系统功能.如果你希望你的程序能够与平台无关的话,这个模块是尤为重要的.即它允许一个程序在编写后不需要任何改动,也不会发生任何问题,就可以在Linux和Windows下运行.一个例 ...

  2. Python标准库 os

    (掌握os模块,你需要了解Linux或类Unix系统下常用命令的操作) os.name  指示你正在使用的平台.比如对于Windows,它是'nt',而对于Linux/Unix用户,它是'posix' ...

  3. Python标准库os

    如果你希望自己的程序能够与平台无关的话,这个模块至关重要. os.name #'nt' for windows, 'posix' for linux/unix os.getcwd() #get cur ...

  4. Python标准库07 信号 (signal包,部分os包)

    作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 在了解了Linux的信号基础之后,Python标准库中的signal包就很容易学习 ...

  5. Python标准库04 文件管理 (部分os包,shutil包)

    作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 在操作系统下,用户可以通过操作系统的命令来管理文件,参考linux文件管理相关命令 ...

  6. A Byte of Python 笔记(12)python 标准库:sys、os,更多内容

    第14章 python 标准库 Python标准库是随Python附带安装的,它包含大量极其有用的模块. sys 模块 sys 模块包含系统对应的功能.如 sys.argv 列表包含命令行参数. # ...

  7. Python标准库09 当前进程信息 (部分os包)

    原文:Python标准库09 当前进程信息 (部分os包) 作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! 我们在Linux的概念 ...

  8. Python -- 标准库 文件管理 (部分os包,shutil包)

    在操作系统下,用户可以通过操作系统的命令来管理文件,参考linux文件管理相关命令.Python标准库则允许我们从Python内部管理文件.相同的目的,我们有了两条途径.尽管在Python调用标准库的 ...

  9. Python标准库14 数据库 (sqlite3)

    作者:Vamei 出处:http://www.cnblogs.com/vamei 欢迎转载,也请保留这段声明.谢谢! Python自带一个轻量级的关系型数据库SQLite.这一数据库使用SQL语言.S ...

随机推荐

  1. MongoDB3.4 shell CRUD操作

    输入db,显示你正在操作的数据库:切换数据库,输入use dbName,如果数据库不存在的话会自动帮我们创建一个:使用show dbs可以显示所有可用的数据库. 测试数据在文末 插入文档 插入操作的行 ...

  2. Linux部分命令及通配符用法

    pwd: 显示工作目录 cd -: 在上一次所在目录与当前目录之间来回切换 cd: 切换回家目录 cat:  文本查看工具 -n:给显示的文本行编号 passwd 修改用户的密码 which 查看系统 ...

  3. [刷题]算法竞赛入门经典(第2版) 5-13/UVa822 - Queue and A

    题意:模拟客服MM,一共有N种话题,每个客服MM支持处理其中的i个(i < N),处理的话题还有优先级.为了简化流程方便出题,设每个话题都是每隔m分钟来咨询一次.现知道每个话题前来咨询的时间.间 ...

  4. UML学习笔记之类之间的关系

    1.    导航关系(Directed Association) A类有一个成员变量保存B的引用. 2.包含关系(Aggregation.Composition) (1)弱包含 含义:每个部门包含多个 ...

  5. RecyclerView添加头部和底部视图的实现方法

    引用-- http://www.zhimengzhe.com/Androidkaifa/15072.html 在天下货crm----签到---签到记录中有使用

  6. Day4-软件目录开发规范

    层次清晰的目录结构:1. 可读性高: 不熟悉这个项目的代码的人,一眼就能看懂目录结构,知道程序启动脚本是哪个,测试目录在哪儿,配置文件在哪儿等等.从而非常快速的了解这个项目.2. 可维护性高: 定义好 ...

  7. Java源码学习 -- java.lang.StringBuilder,java.lang.StringBuffer,java.lang.AbstractStringBuilder

    一直以来,都是看到网上说“ StringBuilder是线程不安全的,但运行效率高:StringBuffer 是线程安全的,但运行效率低”,然后默默记住:一个是线程安全.一个线程不安全,但对内在原因并 ...

  8. /usr/bin/python^M: 解释器错误: 没有那个文件或目录

    遇见问题 因为linux在虚拟机中,所以就在本地敲python代码,敲完后再拿到虚拟机去执行,再输入./filename.py时,就遇到这样的一个问题: bash: ./filename.py: /u ...

  9. gulp环境搭建,gulp入门教程

    gulp常用地址: gulp官方网址:http://gulpjs.com gulp插件地址:http://gulpjs.com/plugins gulp 官方API:https://github.co ...

  10. Java集合类从属关系

    Java的集合分为了四类:List Set Queue Map,每类都有不同的实现,有基于数组实现的,有基于链表实现的,有基于xx树实现的,不同的实现虽在功能上可以相互替代但都有各自的应用场景,如基于 ...