python-(subprocess, commands)

Posted 肉松蛋卷

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python-(subprocess, commands)相关的知识,希望对你有一定的参考价值。

class Exe_local_command():
def __init__(self, command):
‘‘‘

:param command:
‘‘‘
self.command = command
def exe_command(self):
‘‘‘

:return:
‘‘‘
exitstatus, exitresult = commands.getstatusoutput(self.command)
return exitstatus, exitresult

def find_shell(self):
‘‘‘
@summary:find: find_command = ‘find /tmp/atp1 -name "*.log.*"‘
:return:
‘‘‘
find_status, find_result = self.exe_command()
if find_status == 0 and len(find_result) > 0 and find_result.find("No such file or directory") == -1:
return find_result

class Exe_remote_command():
def __init__(self, command, ip, port, user, password):
‘‘‘

:param command:
‘‘‘
self.command = command
self.ip = ip
self.port = port
self.user = user
self.password = password

def exe_command(self):
‘‘‘

:return:
‘‘‘
completed_command = (‘ssh -o StrictHostKeychecking=no -p {0} {1}@{2} "{3}"‘.format(self.port, self.user, self.ip, self.command))
if self.password != None:
completed_command = "sshpass -p {0} {1}".format(self.password, completed_command)

sub_process = subprocess.Popen(completed_command, stderr=subprocess.STDOUT, stdout=subprocess.PIPE, shell=True)
outtext = ‘‘

#实时获取命令执行的信息
while sub_process.poll() is None:
line = sub_process.stdout.readline()
outtext += line
line = line.strip()

exitstatus = sub_process.returncode

以上是关于python-(subprocess, commands)的主要内容,如果未能解决你的问题,请参考以下文章

获取命令的退出代码

python subprocess.Popen

python模块--subprocess

python模块之subprocess

python的subprocess模块

python subprocess模块