Python的标准库中的os模块包含普遍的操作系统功能。如果你希望你的程序能够与平台无关的话,这个模块是尤为重要的。即它允许一个程序在编写后不需要任何改动,也不会发生任何问题,就可以在Linux和Windows下运行。
1.进程参数
os.listdir(dirname):列出dirname下的目录和文件
os.getcwd():获得当前工作目录
os.getpid():返回当前pid。
os.chdir(dirname):改变工作目录到dirname
os.name字符串指示你正在使用的平台。比如对于Windows,它是'nt',而对于Linux/Unix用户,它是'posix'。
os.getenv()和os.putenv()函数分别用来读取和设置环境变量。 os.getenv('HOME')
os.system()函数用来运行shell命令。os.system(‘ls -a’)
os.path.split()函数返回一个路径的目录名和文件名。
>>> os.path.split('/a/b/c/a.txt')
('/a/b/c', 'a.txt')
os.path.isfile()和os.path.isdir()函数分别检验给出的路径是一个文件还是目录。
os.path.exists()函数用来检验给出的路径是否真地存在。
>>> os.path.exists('a/b/a.txt')
False
2.文件对象创建
os.fdopen()
os.popen()
3.文件描述符操作
-
os.close(fd)
os.open(file,flags[,mode])
os.read(fd,n)
os.write(fd,str)
4.文件和目录
os.access(path,mode):查看path是否有mode指定的权限,如是否存在,可读,可写,可执行。
os.chdir(dirname):改变工作目录到dirname
os.getcwd()函数得到当前工作目录,即当前Python脚本工作的目录路径。
os.chmod(path, mode):改变权限
os.chown(path, uid, gid)
os.listdir()返回指定目录下的所有文件和目录名。 os.listdir('./')
os.mkdir(path[,mode])
os.rmdir(path)
os.remove()函数用来删除一个文件。
5.进程管理
详细资料见:http://developer.51cto.com/art/201003/185584.htm
os.execl(path, arg0, arg1,...)
正确写法:os.execl( "/usr/bin/python ", "python ",` 'test.py ', 'i ')
错误写法:os.execl( "/usr/bin/python ", "test.py ",` 'i ')
os.exec*() 都只是posix系统的直接映射,所以os.execl的第一个参数 "/usr/bin/python "是程序的可执行文件,而其他的都是program argument,os.execl中的第二个参数 "python "对于python程序test.py不可见而且没有用。
6.其他系统信息
os.curdir:返回但前目录('.')
os.pardir:只想父目录的常数字符串。windows和linux都是'..'
os.sep 可以取代操作系统特定的路径分割符。 linux下是‘/’,windows下是'\'
os.linesep字符串给出当前平台使用的行终止符。例如,Windows使用'\r\n',Linux使用'\n'而Mac使用'\r'。
7.miscellaneous funciton(其他函数)
os.urandom(n):产生n个字节的随机字符串。