打印输出python子进程

打印输出python子进程,python,printing,subprocess,Python,Printing,Subprocess,进入python的两天,我尝试着做一些简单的事情,但很挣扎 当我使用ls作为示例命令输入运行下面的脚本时,ssh会提示我输入密码,然后它会输出以下内容: <__main__.sshcommand object at 0x7fd0d1136b50> 在类上定义一个方法。例如,你可以写 import subprocess class sshcommand(object) def __init__(self, command): self.command = c

进入python的两天,我尝试着做一些简单的事情,但很挣扎

当我使用ls作为示例命令输入运行下面的脚本时,ssh会提示我输入密码,然后它会输出以下内容:

<__main__.sshcommand object at 0x7fd0d1136b50>
在类上定义一个方法。例如,你可以写

import subprocess

class sshcommand(object)
    def __init__(self, command):
        self.command = command
        subprocess.check_output(['ssh', 'localhost', command]).splitlines()

    def __str__(self):
        return 'ssh localhost "%s"' % command

command = raw_input("command> ")

print '%s' % sshcommand('foo bar')
哪张照片

ssh本地主机“foo-bar”

在类上定义一个方法。例如,你可以写

import subprocess

class sshcommand(object)
    def __init__(self, command):
        self.command = command
        subprocess.check_output(['ssh', 'localhost', command]).splitlines()

    def __str__(self):
        return 'ssh localhost "%s"' % command

command = raw_input("command> ")

print '%s' % sshcommand('foo bar')
哪张照片

ssh本地主机“foo-bar”


问题是您的代码没有以任何方式存储或返回结果

这真的需要成为一门课吗?如果不是,它作为一个函数要简单得多:

import subprocess

def sshcommand(command):
    return subprocess.check_output(['ssh', 'localhost', command]).splitlines()

command = raw_input("command> ")
print sshcommand(command)
如果它绝对必须是一个类:

import subprocess

class sshcommand(object):
    def __init__(self, command):
        self.result = subprocess.check_output(['ssh', 'localhost', command]).splitlines()

    def __str__(self):
        return self.result

command = raw_input("command> ")
print sshcommand(command)

问题是您的代码没有以任何方式存储或返回结果

这真的需要成为一门课吗?如果不是,它作为一个函数要简单得多:

import subprocess

def sshcommand(command):
    return subprocess.check_output(['ssh', 'localhost', command]).splitlines()

command = raw_input("command> ")
print sshcommand(command)
如果它绝对必须是一个类:

import subprocess

class sshcommand(object):
    def __init__(self, command):
        self.result = subprocess.check_output(['ssh', 'localhost', command]).splitlines()

    def __str__(self):
        return self.result

command = raw_input("command> ")
print sshcommand(command)