2010-11-30 7 views
0

これは私の問題です。私はシスコのデバイスにsshしようとしている情報を引き出す。私のコードを実行すると、printステートメントは出力の末尾に0を含む改行を追加します。ここでPLINK CLI入力の出力に続いて、コードの出力は次のようになります。ここではPythonプリントが新しい行と0を追加します

C:\Python30>python PLINKSSHtest.py 
Enter your username: josh 
Password: 
plink -pw nowayjose -ssh [email protected] "show run | inc hostname" 
hostname net-R2 
0 <------------MY ISSUE 

C:\Python30>plink -pw nowayjose -ssh [email protected] "show run | inc hostname" 
hostname net-R2 
    <------------WHAT I EXPECT 

は私のコードは次のとおりです。

def read_dev(): 
    # Print statement here for debugging 
    print ("plink -pw " + password + " -ssh " + user + "@" + HOST + " " + command) 
    cur_dev = os.system("plink -pw " + password + " -ssh " + user + "@" + HOST + " " + command) 
    return(cur_dev) 

HOST = None 
user = input("Enter your username: ") 
password = getpass.getpass() 
command = '"show run | inc hostname"' 
HOST = '1.1.1.1'  
print (read_dev()) 
+0

ドン」 –

+0

短い答え: 'read_dev()'関数が返す値を表示しています。 'print()'を削除してください。関数呼び出しとそれ自身で呼び出します。 – martineau

答えて

4

cur_devがあるplinkコマンドによって返される結果コードを取得しています0。あなたのread_dev関数は、このコードを返しますので、print(read_dev())は0

ちょうどread_dev()代わりのprint(read_dev())を言って出力します。

+0

うん、ありがとう!私は、関数内のprintstemntを移動し、そのすべての良い今。 – josh

4

"ゼロを出力しません"。それはread_dev関数によって返されるcur_devを出力します。これはゼロになります。あなたがそれを話したので、そうする。 print機能を削除し、それが何かを印刷されません。」

0

をあなたは単にあなたはそれがやりたいしない関数からの戻り値を使用して。sys.exit(cur_dev)明示的に終了コードの使用を設定したい場合。

関連する問題