测试基础 python3 执行 shell 命令

tongyuruo · 2020年03月05日 · 最后由 cody 回复于 2020年03月10日 · 1965 次阅读

以执行 shell 命令的相关内置模块和函数有:

os.system
os.spawn
os.popen --废弃
popen2.* --废弃
commands.* --废弃,3.x 中被移除

subprocess:趋向替代 os.system,os.spawn*

sh = "ls -la" #shell 命令
#val = os.system(sh) #os.system 只获得程序执行结果,以数字 int 型为返回结果,1 表示执行成功
#val = os.popen(sh) #os.popen() 获得的是主函数 main 中输出的 print
#vals = '/n'.join(val.readlines()) # 读取 os.popen() 的结果方法是 readlines() 或者 read()

#(status,output) = subprocess.getstatusoutput(sh) # 获得 shell 命令执行后的状态 status 和控制台的所有输出 output
#status:表示执行程序结果状态,值是 0 表示执行成功。
#output:就是打印到控制台一个以\n 为拼接的字符串。

转自:https://www.cnblogs.com/xl717/p/11858641.html

共收到 1 条回复 时间 点赞

建议用 subprocess 把,用 os.system 可能会出现死锁

需要 登录 后方可回复, 如果你还没有账号请点击这里 注册