欢迎光临
我们一直在努力

python os模块常用操作

1 os.environ.get(‘modulename’, ”)

获取某个系统环境变量

2 os.system()

将字符串转换成命令在服务器上运行,每一条system函数执行时,会创建一个子进程在系统上执行命令,子进程结果无法影响主进程。

import os

os.system('cd /usr/local')
os.mkdir('aaa)

这样并不会在local下面生成aaa目录,而是在当前目录下生成

要在local下面生成需要将两个命令放在一起执行

import os

os.system('cd /usr/local && mkdir aaa.txt')
# 或者
os.system('cd /usr/local ; mkdir aaa.txt')

3 os.fork

创建子进程

import os
import time

print "Before fork process pid=%s, ppid=%s" % (os.getpid(), os.getppid())

pid = os.fork()
if pid == 0:
    print "I am child process pid=%s, ppid=%s" % (os.getpid(), os.getppid())
    time.sleep(5)
else:
    print "I am parent process pid=%s, ppid=%s" % (os.getpid(), os.getppid())
    time.sleep(5)

# 下面的内容会被打印两次,一次是在父进程中,一次是在子进程中。
print "After fork process pid=%s, ppid=%s" % (os.getpid(), os.getppid())

输出结果 :

Before fork process pid=18595, ppid=25925
I am parent process pid=18595, ppid=25925
I am child process pid=18596, ppid=18595
After fork process pid=18595, ppid=25925
After fork process pid=18596, ppid=18595
由于 fork() 是 Linux 上的概念,所以如果要跨平台,最好还是使用 subprocess 模块来创建子进程。

赞(0) 打赏
未经允许不得转载:乌西塔 » python os模块常用操作

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址

觉得文章有用就打赏一下文章作者

微信扫一扫打赏