paramiko -SSH学习

SSHClient

用于连接远程服务器并执行基本命令

1、SSH登陆到交换机执行指令,并且将结果反馈到file1

import paramiko

# 创建SSH对象
ssh  =  paramiko.SSHClient()
# 允许连接不在know_hosts文件中的主机
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
# 连接服务器
ssh.connect(hostname = 'IP' , port = 22 , username = 'admin' , password = '123' )
  
# 执行命令
stdin, stdout, stderr  =  ssh.exec_command( 'display interface brief' )
# 获取命令结果
result  =  stdout.read()
f = open("file1","wb")
f.write(result)
f.close()
ssh.close()
# 关闭连接
ssh.close()
 
 
另外一种方法,有登陆日志,不错
 
# -*- coding: utf-8 -*-
import paramiko

def sshclient_execmd(hostname, port, username, password, execmd):
paramiko.util.log_to_file("paramiko.log")

ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())

ssh.connect(hostname=hostname, port=port, username=username, password=password)
stdin, stdout, stderr = ssh.exec_command(execmd)
stdin.write("Y") # Generally speaking, the first connection, need a simple interaction.
a = stdout.read()
file = open("log","wb")
file.write(a)
file.close()
ssh.close()

def main():
hostname = ''
port = 22
username = ''
password = ''
execmd = "display ip interface brief"
sshclient_execmd(hostname, port, username, password, execmd)

转载于:https://www.cnblogs.com/hapen66/p/7307122.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值