zoukankan      html  css  js  c++  java
  • 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
  • 相关阅读:
    JavaScript if 条件语句
    JavaScript while 循环
    JavaScript for 循环
    JavaScript 字典
    JavaScript 数组
    JavaScript 函数
    JavaScript 定时器
    JavaScript 字符串操作
    CEF js调用C#封装类含注释
    多网卡的环境下的发包
  • 原文地址:https://www.cnblogs.com/ting152/p/12580516.html
Copyright © 2011-2022 走看看