任务 | 工具 |
---|---|
Shell变量 | os.environ |
运行程序 | os.systeam, os.popen, os.execv, os.spawnv |
派生进程 | os.fork,os.pipe, os.waitpid, os.kill |
文件描述符,文件锁 | os.open, os.read, os.write |
文件处理 | os.remove, os,rename, os.mkfifl,os.mkdir, os.rmdir |
管理工具 | os.getcwd, os.chdir, os.chmod, os.getpid, os.listdir, os.access |
移植工具 | os.sep, os.pathsep, os.curdir, os.path.split, os.path.join |
路径名工具 | os.path.exists('path'), os.path.isdir('path'), os.path.isfile('path'), os.path.getsize('path') |
# coding:utf-8
import os
op = os.system("ls /")
print(op) # 这里op为输出的返回值 0表示正常退出 1表示失败
op = os.popen("ls")
print(op.read()) # 获取输出的结果
import subprocess
# 模拟 os.systeam
subprocess.call("ls", shell=False)
# 模拟 os.popen
pipe = subprocess.Popen("ls", stdout=subprocess.PIPE) # stdout指定重定向输出到python
op = pipe.stdout.read() # 重定向输出
print(op.decode("utf-8"))
op = pipe.wait() # 退出状态
print(op)
>>Applications
Library
Network
System
Users
Volumes
bin
cores
data
dev
etc
home
installer.failurerequests
net
opt
private
sbin
tmp
usr
var
0
命令行工具.py
命令行工具.py
命令行工具.py
0
在unix系统下用os.systeam调用shell命令时,可以在命令行代码末尾加上运算符 &即可,
windows则用start命令启动也能使命令并行启动
# unix
os.systeam("python program.py arg arg &")
# windows
os.systeam("start python program.py arg arg")
os部分函数说明
函数 | 说明 |
---|---|
os.environ | 获取和设置shell环境变量 |
os.fork | 在类Unix系统下派生新的子进程 |
os.pipe | 负责程序间通信 |
os.execlp | 启动新程序 |
os.spawnv | 启动带有底层控制的新程序 |
os.open | 打开基于底层描述符的文件 |
os.mkdir | 创建新目录 |
os.mkfifo | 创建新的命名管道 |
os.stat | 获取文件底层信息 |
os.remove | 根据路径名删除文件 |
os.walk | 将函数或循环应用于整个目录树的各部分 |
os.getcwd | 获取当前目录路径 # get current work dictionally |
sys.path | 获取当前python环境变量 可操作重新设置 |
网友评论