码迷,mamicode.com
首页 > 其他好文 > 详细

paramiko 命令行

时间:2014-09-24 01:27:55      阅读:424      评论:0      收藏:0      [点我收藏+]

标签:blog   os   ar   for   文件   sp   on   c   log   

  1. 链接方法:

方式一:
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh.connect("某IP地址",22,"用户名", "口令")
上面的第二行代码的作用是允许连接不在know_hosts文件中的主机。

方式二:
ssh = paramiko.Transport((“主机”,”端口”))
ssh.connect(username = “用户名”, password = “口令”)
如果连接远程主机需要提供密钥,上面第二行代码可改成:
ssh.connect(username = “用户名”, password = “口令”, hostkey=”密钥”)

方式三:
ssh = paramiko.SSHClient()
#ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
pkey_file=‘/hmoe/kkk/.ssh/id_rsa‘    #设置用户私秘钥路径
key=paramiko.RSAKey.from_private_key_file(pkey_file)
ssh.connect(host,port,user, pkey=key,timeout=5)


2.实例:

In [1]: import paramiko
In [2]: import sys,os
In [3]: host=‘127.0.0.1‘   #sys.argv[1] 第一个参数为主机IP
In [4]: user=‘kkk‘
In [5]: password=‘123456‘
In [6]: cmd=‘ls -l‘
In [7]: s=paramiko.SSHClient()    #绑定实例
In [8]: s.load_system_host_keys()  #加载本地host主机文件
In [9]: s.set_missing_host_key_policy(paramiko.AutoAddPolicy())  #允许连接不在know_hosts文件中的主机(可选项)
In [10]: s.connect(host,22,user,password,timeout=3)  #链接远程主机
In [11]: stdin,stdout,stderr=s.exec_command(cmd)    #一次性的执行命令
In [12]: cmd_result=stdout.read(),stderr.read()     #读取命令结果
In [13]: for i in cmd_result:          
   ....:     print i
   ....:     
total 328452
drwxrwxr-x 3 kkk  kkk       4096 Sep  3 01:54 apache
drwxr-xr-x 3 root root      4096 Sep 17 00:14 blog
drwxrwxr-x 6 kkk  kkk       4096 Sep 21 19:36 ENV
-rw-rw-r-- 1 kkk  kkk        584 Aug 22 03:28 index.html
-rw-r--r-- 1 root root       547 Sep 23 02:48 mping.py
drwxrwxr-x 2 kkk  kkk       4096 Sep 21 18:32 py3
-rw-r--r-- 1 root root       327 Sep 14 13:17 t.log
-rw-rw-r-- 1 kkk  kkk  336299008 Sep 14 09:31 ubuntu_apache2.tar


paramiko 命令行

标签:blog   os   ar   for   文件   sp   on   c   log   

原文地址:http://my.oschina.net/jk409/blog/317719

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!