繁体   English   中英

使用子进程和rpyc在Python中将方法之间的连接传递给其他方法

[英]Passing connection from method to other method in Python using subprocess and rpyc

尝试创建一个库,执行此操作-连接到Unix框,将此连接传递给下一个方法并运行Shell脚本。 我也在其他文件中调用此方法。 python新手,请帮忙。

文件1:

from file2 import *
def start():
        one=libs()
        one.connect()
        one.run()

文件2:

import rpyc

class libs():
    def connect(self):
        self.conn=rpyc.classic.connect("hostname")
        self.remote=self.conn.modules.subprocess
        return
    def run(self):

        p1="sh -vx /tmp/test.sh"
        self.result=self.remote.Popen(p1,shell=True,stdout=remote.PIPE,stderr=remote.PIPE)
        out,err=self.result.communicate()
        print out,err
        return out,err

我在做什么错,我试图在这里实现OOPS。没有错误或仅输出代码退出并输出0的尝试已尝试将文件2中的两个方法合并为一个,然后仅在文件1中调用一个方法。

import rpyc

class libs():
p1="sh -vx /tmp/test.sh"
    def connect(self,p1):
        self.conn=rpyc.classic.connect("hostname")
        self.remote=self.conn.modules.subprocess


self.result=self.remote.Popen(p1,shell=True,stdout=remote.PIPE,stderr=remote.PIPE)
        out,err=self.result.communicate()
        print out,err
        return out,err

您是否尝试过首先开始学习python?

调用函数或方法或任何可调用的对象时,需要括号...

def start():
        one=libs()
        one.connect()
        one.run()

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM