リモートターミナルサーバーへのpython-paramiko操作

ローカルに開放書き込みファイル1.with

2.paramiko SFTPClient塩は、サーバーにファイルをプッシュします

塩-CPによって3.paramiko SSHClientは、ターゲット・ファイル・サーバーに配布されます

。1 
で開く(filePathに、' W ')AS F:      filePathにローカルファイルパス、W書き込みモード
  f.write(コンテンツ)   
 の戻り filePathに    

 

2 インポートparamikoの
 1は、クライアントに接続されている 
トランスポート= paramiko.Transport((ssh_url、ssh_port))
transport.connect(ユーザ名 = ssh_user、パスワード= ssh_pwd)
2を定義だけで定義されたパラメータとして、顧客との対話の終わりには、彼を輸送するために渡さ 
= SFTP paramiko.SFTPClient.from_transport(トランスポート)
 sftp.put(R&LT '/ユーザ/ MNT / {}'形式(SCRIPT_NAME)、「/mnt/{}'.format(script_name)) 
sftp.put(ローカルパス+ ' {} ' .format(ファイル名)、ターゲットパス+ ' {} ' .format(ファイル名))
5閉じ接続 
transport.close()

 

3 

インスタンス化A SSH SSH = paramiko.SSHClient() ホストが接続khost_keyのことができない設定 ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) 、接続の作成 ssh.connect(ホスト名= ssh_url、ポート= ssh_port、ユーザ名=をssh_user、パスワード= ssh_pwd ファイル名を指定して実行、塩salt_minion_hostname local_url -L-CP /ファイル名TARGET_URL STDIN、STDOUT、STDERROR = ssh.exec_command(' 塩localhost.localdomainを-L-CP を/ mnt / ' + SCRIPT_NAME + ' / mntに' #のプリントアウト を印刷(stdout.read()) クローズ接続が (ssh.close)

 

リモート・サーバを介して前記制御端子は、paramikoモジュール実行コマンドのgitをcmdを

インポートparamiko
 DEF parmiko_con():
    インスタンス化A SSH 
    SSH = paramiko.SSHClient()
    設定ホストが接続khost_keyのすることはできません
    ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
    、接続の作成 
    ssh.connect(ホスト名= ssh_url、を= ssh_portポート、ssh_user =ユーザ名、パスワード= ssh_pwd 実行
    CMD = 'CDを/ mnt / test_pro / opsmanage / && gitのshortlog -2' #ビュー最近、実行の2つのバージョンが問題はありませんcmdを提出したが、関数内でqで必要な出口へ、応答のgit logコマンドを実行しません
    。#CMD =「CDを/ mnt / test_pro / opsmanage / && Gitの改訂-マスターリスト」マスター#がコミットレコードフラッシュバック・ブランチが配置された 
    CMD = "CDを/ mnt / test_pro / opsmanage / && gitの--since 1.weeks =ログイン「#は、提出のほぼ週は、データのリストだけを処理する必要が参照し、必要会場:HTTPS://www.cnblogs。 COM / Lutt / P / 12037454.html
    2つだけレコードを逆にするCMD = 'CDを/ mnt / test_pro / opsmanage /改訂&& Gitの--all 2 -n-リスト' #歴史的なバージョン(IDショーのみコミット)
    CMD = 'CDを/ mnt / opsManage / && gitのブランチ-a' #は、 現在のすべてのブランチ、gitのブランチを表示し、現在のブランチ見る
    CMD = 'CDを/ mnt / test_pro / opsmanage / && Gitのタグ-l' #は、現在のすべてのタグを表示 
    、標準入力をSTDOUT、STDERROR = ssh.exec_command(CMD) 
    プリントアウト 
    LIST2 = [] 
    RET = stdout.read()。デコード(' UTF-8 ' 
    LIST2 = RET。スプリット( ' \ nは'印刷(LIST2) 

    クローズ接続
    )ssh.closeを(

IF  __name__ == ' __main__ ' 
    parmiko_con()
    印刷' OK '

 

おすすめ

転載: www.cnblogs.com/lutt/p/12037586.html