paramiko是用来远程执行命令的模块,
下面是ssh和scp的的两个例子
1- ssh
#!/usr/bin/env python
import paramiko
hostname = ''
password = ''
command = 'ls'
username = ""
port = 22
client = paramiko.SSHClient()
# 其中load_host_keys一般配合save_host_keys来使用,
# load_system_host_keys可以指定主机密钥文件,
# 如果不指定默认就是家目录下的.ssh目录下的known_hosts文件。
client.load_system_host_keys()
client.connect(hostname=hostname, port=port,
username=username, password=password)
stdin, stdout, stderr = client.exec_command(command)
print(stdout.read())
client.close()
2- scp
这里是直接把服务器上面的的文件复制下来
#!/usr/bin/env python
import paramiko
hostname = ''
password = ''
source = '/root/tmp.txt' # 服务器上的文件
dest = r'D:\\tmp\\tmp.txt' # 本机的文件
username = ""
port = 22
t = paramiko.Transport((hostname, port))
t.connect(username=username, password=password)
sftp = paramiko.SFTPClient.from_transport(t)
sftp.get(source, dest)
t.close()
3- load_system_host_keys
函数的源码
def load_system_host_keys(self, filename=None):
if filename is None:
# try the user's .ssh key file, and mask exceptions
filename = os.path.expanduser("~/.ssh/known_hosts")
try:
self._system_host_keys.load(filename)
except IOError:
pass
return
self._system_host_keys.load(filename)
从这里可以看出,
load_system_host_keys
默认从~/.ssh/known_hosts
里面获取服务器,
否则要自己提供一个文件,
这里需要注意一下。
4- 参考的链接
- paramiko的ssh和scp
声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。
举报投诉
-
模块
+关注
关注
7文章
2654浏览量
47280 -
命令
+关注
关注
5文章
674浏览量
21961 -
执行
+关注
关注
0文章
16浏览量
12584
发布评论请先 登录
相关推荐
手机也能玩Linux服务器——NOKIA手机高端应用
no” 输入用户名和密码后,我们看到已经成功登陆到服务器上,这时光标停在命令提示符上,如图: 我们输入几个简单基本的Linux命令: ls命
发表于 11-28 14:05
远程登陆linux
(man-in-the-middle)攻击方式的攻击。就是存在另一个人或者一台机器冒充真正的服务器接收用户传给服务器的数据,然后再冒充用户把数据传给真正的服务器。而 SSH 是目前较可靠,专为远程登录会话和其他网络
发表于 12-04 16:29
【Banana Pi M1+试用体验】BananaPi-M1+之串口登陆、vnc远程登陆
的串口。(打开设备管理器就可以看到,我这里是COM3)速度那里填115200,然后点打开要是开机过后进去是什么都不显示的,在这里只要按回车键就可以看见命令行了。然后输入用户名跟密码(我这里已经登陆过了
发表于 06-17 19:20
【Banana Pi M1+试用体验】BananaPi-M1之搭建FTP服务器
命令行窗口,输入ftp +你的ip地址。默认账号是pi密码bananapi(根据你实际登陆PI用的账号密码) 如果显示这样,说明你的ftp服务器已经成功启动了。6.电脑登陆ftp服
发表于 06-26 12:53
【NanoPi NEO Plus2开发板试用体验】tomcat+mysql+natapp搭建服务器(域名登陆)---续
前言:前面写到安装好tomcat、mysql之后,在电脑端用浏览器登陆服务器,接下来配置虚拟目录,创建数据库和表,插入数据。之前部分的链接是:https://bbs.elecfans.com
发表于 08-25 17:59
远端机器的临时执行命令
例行化的工作,像复杂的配置管理、机械化的环境部署,可以用Ansible的playbook(剧本)功能。临时需要在远端机器执行命令时,可以使用Ansible的ad-hoc command(临时执行命令
发表于 07-19 06:42
账号登陆问题
我使用学生邮箱申请的学生许可证,然后用我自己的常用邮箱申请了得极的账号,请问我该如何在使用学生许可证的同时使用得极。学生许可证登陆服务器是portal365.altium.com,得极服务器是portal365.altium.c
发表于 04-20 11:51
求一份基于RK3399的Samba共享服务器设计方案
1、搭建Samba共享服务器安装Samba首先远程登陆 RK3399执行以下命令安装 Samba安装结束阶段有错误提示,但提示说可以忽略这个错误配置Samba新建 smaba 共享目录
发表于 04-15 16:10
CAD中如何快速重复执行命令?
快速重复执行命令主要是靠鼠标右键或者是键盘上的空格以及上下方向键。 输入OP命令打开选项对话框,点用户系统配置选项卡自定义右键单击按钮,默认模式下无论是否选定对象,单
发表于 10-23 17:04
•1607次阅读
介绍redis服务器运行过程
Redis服务器负责与多个客户端建立网络连接,处理客户端发送三个的命令请求,在数据库中爆粗你客户单执行命令所产生的数据,并通过资源管理来维持服务器
发表于 03-07 10:15
•546次阅读
1433端口的SQL TOOL执行命令错误应该如何修复详细说明
然后用SQL TOOLS连接主机,进行SQL或者CMD命令执行,从而 得主机的控制权,但是服务器的管理人员通常会把一些不安全的漏洞补上,所以用sql tools直接执行命令成功的几率不
发表于 11-22 16:20
•2次下载
评论