2016-04-11 5 views
0

私はOp5チェックを修正しようとしていますが、-H引数をssh接続のホスト名として使用できないようです。私はパイソンにはあまりよくないが、私が行くように学ぶ。Python argparse with Nagios check

import paramiko 
import argparse 
ssh = paramiko.SSHClient() 

# Argument parsing 
parser = argparse.ArgumentParser(
    description=__doc__, 
    epilog='Developed by %s - For more information see: "%s"' 
    % (author, url)) 

parser.add_argument('-H', '--hostname', dest='hostname', required=True, help='Host name, IP Address') 

args = parser.parse_args() 

ssh.connect('hostname='args', username='', password='') 

はおそらくものを逃したが、私はいくつかの助け:)

答えて

2

ファーストを使用することができ、hostnameのうち、引用符を取る - あなたはusernamepasswordのためにやったようにキーワード引数ラベルは、引用符は必要ありません。

ssh.connect(hostname=args, username='', password='') 

次にあなたがargsオブジェクトから正しい引数にアクセスする必要がある - あなたはそれをWあなたの引数を宣言するときにdestとして指定したものから呼ばれるものを見つけることができますith add_argument

ssh.connect(hostname=args.hostname, username='', password='') 
+0

これはうまくいきました。それについても良い説明をありがとう:) – Mamykin