Python OS模块标准库的系统接口及操作方法

时间:2022-04-16 13:08:53

Python OS模块标准库的系统接口及操作方法

os.name 返回当前操作系统名,定义了'posix','nt','mac','os2','ce','java'(我使用win7/python3.1,输出的是nt。posix不知道是什么系统,mac应该是Apple机吧,os2也不知道是什么东东,ce应该是winCE吧,这样的话,python应该支持向CE移植啊,偶自己试过,没编译成功,java估计是Sun开发的那个solari*系统)

os.environ 返回一个mapping object包括当前系统及用户的环境变量,格式为environ({变量名: 变量值, 变量名: 变量值……})。使用os.environ[变量名]可以直接得到相应变量值;也可以使用os.getenv(变量名)来获得变量值。说明:当import os后,环境变量即被映射,如果在此期间,用其它方面修改环境(系统及用户),os.environ值不会改变,除非直接修改os.environ的值。还有一个函数putenv(key, value).

os.getcwd() 返回当前工作目录。类似于linux中的pwd命令

os.chdir( path ) 改变当前工作目录至path

os.fchdir( fd ) 不知道用途用法。(我的系统中没有这个函数)

os.ctermid() Return the filename corresponding to the controlling terminal of the process.

os.getegid() 返回当前进程(process)所属的有效group id 只有unix可用

os.geteuid() 返回当前进程所属的用户ID (Unix)

os.getgid() 返回当前进程所属的真实组ID(real group id)

os.getgroups()  Return list of supplemental group ids associated with the current process. Availability: Unix.

os.getlogin() 返回当前登陆用户名

os.getpgid( pid ) Return the process group id of the process with process id pid. If pid is 0, the process group id of the current process is returned. Availability: Unix.

os.getpgrp() 返回当前进程组的ID(Unix)

os.getpid() 返回当前进程的PID,( Unix, Windows )

os.getppid() 返回当前进程父进程的ID(Unix)

os.getuid() 返回当前进程所属用户ID(Unix)

os.getenv( varname[, value] )  如果存在则返回相应环境变量值,否则返回None

os.putenv( varname, value )  设定一个环境变量,其值为value。所作的改变会影响到由os.system(), popen(),fork(), execv()等启动的子进程。(Unix, Windows)在一些平台如FreeBSD, Mac OS X上设定环境变量可能引起内存泄漏。如果系统支持putenv()函数,使用os.environ设置环境变量会自动通过调用putenv()函数实现相应功能。

os.setegid(egid) 设定当前进程的有效group id (Unix)

os.seteuid( euid ) 设定当前进程的有效用户ID  (Unix)

os.setgid( gid )  设定当前进程的组ID(group id)

os.setgroups( groups )

os.setpgrp() os.setpgid( pid, pgrp ) os.setreuid( ruid, euid ) os.setregid( rgid, egid ) os.getsid(pid) os.setsid() os.setuid( uid )  os.strerror( code )

os.umask( mask ) 设定当前的umask数据,返回先前的umask值 (windows, unix )

os.uname()  返回包含五个值的元组包含一些系统相关的信息(sysname, nodename, release, version, machine).有些系统将nodename截断为8个字符或leading component。想获得hostname的最好方法是使用socket.gethostname()或者是socket.gethostbyaddr() (Unix)

os.unsetenv( varname ) 删除环境变量varname。作出的改变会影响到os.system(), popen(), fork(), execv()启动的子进程。如果支持unsetenv(),删除os.environ中的项目,会自动调用unsetenv()完成任务,然而调用unsetenv()删除,不会更新o.environ

参考资料:http://www.iplaypython.com/module/os.html