python 遠程執行linux命令


python3執行Linux命令,這里用模塊 subprocess,此模塊詳情可參考:https://www.cnblogs.com/lincappu/p/8270709.html

以下是自己封裝的一些方法:

check_output傳參太復雜,轉用os.system執行

class RemoteLinux:
    def __init__(self, ip, username, password):
        self.ip = ip
        self.username = username
        self.password = password

    def run_cmd(self, cmd):
        cmd_str = "sshpass -p {} ssh {}@{} '{}'".format(self.password, self.username, self.ip, cmd)
        result = os.system(cmd_str)
        logger.info("命令[%s]執行返回碼:%s", cmd_str, result)
        return result

    def run_scp_2_remote(self, local_dir, remote_dir):
        cmd_str = "sshpass -p {} scp -r {}/* {}@{}:{}".format(self.password, local_dir, self.username, self.ip,
                                                            remote_dir)
        result = os.system(cmd_str)
        logger.info("命令[%s]執行返回碼:%s", cmd_str, result)
        return result

    def run_scp_2_local(self, local_dir, remote_dir):
        cmd_str = "sshpass -p {} scp -r {}@{}:{}/* {}".format(self.password, self.username, self.ip, remote_dir,
                                                            local_dir)
        result = os.system(cmd_str)
        logger.info("命令[%s]執行返回碼:%s", cmd_str, result)
        return result

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM