Python学习之十_paramiko的简单学习

python,学习,paramiko,简单 · 浏览次数 : 10

小编点评

```python import paramiko # 创建 SSH 连接对象 ssh = paramiko.SSHClient() # 设置自动添加策略,不添加的话如果不在本地 know_hosts 文件记录的主机则无法连接 ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) # 连接远程主机 ssh.connect(hostname="10.110.xxx.xxx", port=22, username="root", password="xxxxx") # 建立通道并执行命令 stdout, stderr, ssh_error = ssh.exec_command("ps -ef") # 获取输出和错误信息 res, error = ssh_out.read(), ssh_error.read() # 打印结果 print(result.decode()) # 关闭连接 ssh.close() # 使用 SFTP 连接 transport = paramiko.Transport(('10.110.xxx.xxx', 22)) transport.connect(username='root', password='xxxx') ftp = paramiko.SFTPClient.from_transport(transport) # 获取文件 ftp.get('/pg_hba.conf', r'F:\\zhaobsh\\pg_hba.conf') # 打印 FTP 文件内容 print(str(ftp)) ```

正文

Python学习之十_paramiko的简单学习


简介

pywinrm 是python用于连接访问windows的工具
paramiko 是python用于连接访问linux的工具

ansible等工具很多也是基于类似的组件进行的处理
连接不同的系统进行命令行的操作. 

paramiko的简介

paramiko是用python语言写的一个模块,
遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接。

可以进行ssh的连接命令执行以及ftp的文件下载与上传

安装与使用-ssh

import paramiko

# 第一步实例化 SSHClient,获取对象
ssh = paramiko.SSHClient()

# 设置自动添加策略,不添加的话如果不在本地know_hosts文件记录的主机则无法连接
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())

# 连接远程主机
ssh.connect(hostname="10.110.xxx.xxx",port=22,username="root",password="xxxxx")

# 建立通道并执行命令 stdout 为正确的输出  stderr为错误的输出
ssh_in,ssh_out,ssh_error = ssh.exec_command('ps -ef')


res,error = ssh_out.read(),ssh_error.read()
result = res if res else error
print(result.decode())

ssh.close()

安装与使用-sftp

import paramiko
import os
transport = paramiko.Transport(('10.110.xxx.xxx',22))
transport.connect( username='root',password='xxxx')
ftp = paramiko.SFTPClient.from_transport(transport)
print(str(ftp))

ftp.get('/pg_hba.conf', r'F:\zhaobsh\pg_hba.conf')
# 注意 我这边必须得有  F:\zhaobsh\pg_hba.conf  这个文件才能成功. 

与Python学习之十_paramiko的简单学习相似的内容:

Python学习之十_paramiko的简单学习

Python学习之十_paramiko的简单学习 简介 pywinrm 是python用于连接访问windows的工具 paramiko 是python用于连接访问linux的工具 ansible等工具很多也是基于类似的组件进行的处理 连接不同的系统进行命令行的操作. paramiko的简介 par

gRPC入门学习之旅(十)

gRPC是一个高性能、通用的开源远程过程调用(RPC)框架,基于底层HTTP/2协议标准和协议层Protobuf序列化协议开发, gRPC 客户端和服务端可以在多种环境中运行和交互。你可以用Java创建一个 gRPC 服务端,用 Go、Python、C# 来创建客户端。本系统文章详细描述了如何创建一...

Python学习之四_部分battery的学习

Python学习之四_部分battery的学习 CentOS升级pip的方法 yum install python3 之后, 一般centos的版本都很低, 有时候很多module 是无法安装的. 一般可以通过他进行升级: pip3 install -U pip 注意如果无法升级, 可以先这样处理

Python学习之五_字符串处理生成查询SQL

Python学习之五_字符串处理生成查询SQL 前言 昨天想给同事讲解一下获取查询部分表核心列信息的SQL方法 也写好了一个简单文档. 但是感觉不是很优雅. 最近两三天晚上一直在学习Python. 想将昨天的文档处理成一个工具的方式. 将查询SQL展示出来. 然后再由同事手工检查确认. 增加时间范围

Python学习之六_同时访问Oracle和Mysql的方法

Python学习之六_同时访问Oracle和Mysql的方法 背景 jaydebeapi 可以访问大部分数据库. 但是他有一个问题是仅能够访问一种类型的数据库. 如果同事连接两种数据库,那么就会出现问题 会有如下的提示: TypeError: Class com.mysql.cj.jdbc.Driv

Python学习之七_input和print

Python学习之七_input和print 摘要 python3 之后 函数必须带 () 了 因为我开始学习的比较晚, 所以准备Python3开始学起 前面主要是模仿别人的代码进行学习 后续慢慢学习 使用python调用ebpf等内容. 这里简单先总结一下input和print的函数. 作为一个学

Python学习之八_调用Outlook发送邮件以及调用远程windows上面的python

Python学习之八_调用Outlook发送邮件以及调用远程windows上面的python 摘要 之前只有一个需求是发送加密邮件. 之前一直是使用linux进行发送.但是总是无法发送加密邮件. 最近学习python, 发现可以使用 python来调用outlook来发送邮件. 这样就比较简单了.

Python学习之九_winrm执行远程机器的cmd命令

Python学习之九_winrm执行远程机器的cmd命令 winrm # 注意如下命令需要按照顺序执行. # 打开powershell的管理员模式进行如下的操作. set-executionpolicy remotesigned winrm quickconfig winrm set winrm/c

Python学习之十一_Windows获取硬件信息

Python学习之十一_Windows获取硬件信息 简介 网上找了一些方法简单整理了下,可以快速获取部分信息 包含机器名称等. 以及序列号相关 部分学习来源: https://blog.51cto.com/u_15354476/5339864 源码 import psutil import wmi

Python学习之十三_pip的学习

Python学习之十三_pip的学习 pip的含义 pip: pip is the package installer for Python. You can use pip to install packages from the Python Package Index and other in