简体   繁体   中英

Run python script function in remote machine

I have script in remote device and I want to run specific function in python script in remote device

remote device has below script:

#connect.py

class ConnectDevice:
    def __init__(self, ip):
        connect.Device(ip)
    def get_devicestate(self):
        state = show.Device_State  
        return state

configured password less connection from source machine to remote machine

function get_devicestate return up or down.

How to get get_devicestate output from source machine. source machine has below script:

import os
import sys
import time
import getpass
import errno
import json
import subprocess
import threading
from subprocess import call
from subprocess import check_output
call(["ssh", "1.1.1.1", "\"python Connect.py\""])#This is just example how to run script from source to remote. Need help how to run function get_devicestate and get value. 

At a first glance , it seems that connect.py has got more code than you have pasted in your question. Anyways, assuming connect.py does not require any input parameters to run, simply use subprocess's check_output method to get the stdout message and store it in a variable for further use.

from subprocess import check_output
out = check_output(["ssh", "1.1.1.1", "\"python Connect.py\""])

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

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