系统命令模块subprocess
发布时间:2020-12-16 01:38:38 所属栏目:安全 来源:网络整理
导读:系统命令 可以执行shell命令的相关模块和函数有: os.system os.spawn* os.popen* --废弃 popen2.* --废弃 commands.* --废弃,3.x中被移除 import commandsresult = commands.getoutput('cmd')result = commands.getstatus('cmd')result = commands.getstat
系统命令可以执行shell命令的相关模块和函数有:
import commands result = commands.getoutput('cmd') result = commands.getstatus('cmd') result = commands.getstatusoutput('cmd') 以上执行shell命令的相关的模块和函数的功能均在 subprocess 模块中实现,并提供了更丰富的功能。 call 执行命令,返回状态码 ret = subprocess.call(["ls","-l"],shell=False) ret = subprocess.call("ls -l",shell=True) check_call 执行命令,如果执行状态码是 0 ,则返回0,否则抛异常 subprocess.check_call(["ls","-l"]) subprocess.check_call("exit 1",shell=True) check_output 执行命令,如果状态码是 0 ,则返回执行结果,否则抛异常 subprocess.check_output(["echo","Hello World!"]) subprocess.check_output("exit 1",shell=True) subprocess.Popen(...) 用于执行复杂的系统命令 参数:
import subprocess ret1 = subprocess.Popen(["mkdir","t1"]) ret2 = subprocess.Popen("mkdir t2",shell=True) 终端输入的命令分为两种:
import subprocess obj = subprocess.Popen("mkdir t3",shell=True,cwd='/home/dev',) import subprocess obj = subprocess.Popen(["python"],stdin=subprocess.PIPE,stdout=subprocess.PIPE,stderr=subprocess.PIPE,universal_newlines=True) obj.stdin.write("print(1)n") obj.stdin.write("print(2)") obj.stdin.close() cmd_out = obj.stdout.read() obj.stdout.close() cmd_error = obj.stderr.read() obj.stderr.close() print(cmd_out) print(cmd_error) import subprocess obj = subprocess.Popen(["python"],universal_newlines=True) obj.stdin.write("print(1)n") obj.stdin.write("print(2)") out_error_list = obj.communicate() print(out_error_list) import subprocess obj = subprocess.Popen(["python"],universal_newlines=True) out_error_list = obj.communicate('print("hello")') print(out_error_list) https://www.cnblogs.com/wupeiqi/articles/5501365.html (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |