Python学习---重点模块之subprocess

subprocess是用来执行系统程序,查看系统的模块,

查看当前目录

第一种方法:

import subprocess
# subprocess会单独自己开辟一个线程,内部是多线程
# stdout=subprocess.PIPE 利用管道将输出的内容输出由子进程转换到主进程
obj = subprocess.Popen('dir', shell=True, stdout=subprocess.PIPE)
print(obj)         # <subprocess.Popen object at 0x00000000009A7B00>
print(str(obj.stdout.read(), 'gbk'))   # 编码用GBK,默认在当前文件所在的文件路径

image

第二种更简单:

import subprocess
print(subprocess.getoutput('dir'))
image

第三种:利用os.system()

import os
print(os.system('dir'))

执行某个脚本/命令

# 方法一
tracker_obj = subprocess.Popen("%s %s" % (session_tracker_script, md5_str), shell=True,
                                                           stdout=subprocess.PIPE, stderr=subprocess.PIPE,
                                                           # 这个cwd命名式指定python运行的路径的
                                                           cwd=settings.BASE_DIR)
# 方法二: 根Popen的区别是,run可以让程序在后台运行
ssh_instance = subprocess.run(login_cmd, shell=True)

猜你喜欢

转载自www.cnblogs.com/ftl1012/p/subprocess.html
今日推荐