python ssh登录linux 上传和下载文件
#!usr/bin/python
# coding: utf-8 import paramiko
import json
remotedir='/tmp/log'
remotefile = 'bst_manager-2019-04-17-info.log'
hostname = '192.168.50.34'
port = 8022
username = 'root'
password ='*****'
command = """tail -n 30 /tmp/log/bst_manager-2019-04-17-info.log | grep 'other'""" def ssh_remote():
""" 1、基于用户名和密码连接
"""
print ("基于用户名和密码连接")
# 创建SSH对象
ssh = paramiko.SSHClient()
# 允许连接不再know_host文件的主机
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
# 连接服务器
ssh.connect(hostname, port, username, password)
# 执行命令
stdin, stdout, stderr = ssh.exec_command(command)
data = stdout.readline()
cloud_data = json.loads(data)['other'] with open("../test_data_dev/data.json", 'w+', 0) as f:
cloud_data = json.dumps(cloud_data, indent=4, separators=(',', ':'))
f.write(cloud_data)
ssh.close()
print ("1. over\n\n\n") #
# def ssh_remote_moth2():
#
# """ 2、基于用户名和密码连接
# """
# print ("基于用户名和密码连接,使用SSHClient, 封装Transport")
# ssh = paramiko.SSHClient()
# transport = paramiko.Transport(sock=(hostname, port))
# # print transport
# transport.connect(username=username, password=password)
#
# ssh._transport = transport
# stdin, stdout, stderr = ssh.exec_command(command)
# data = json.loads(stdout.readline())["other"]
#
# with open("../test_data_dev/data.json", 'w+', 0) as f:
# cloud_data = json.dumps(data, indent=4, separators=(',', ':'))
# f.write(cloud_data)
# ssh.close()
#
# transport.close()
# print ('2. over \n\n\n')
#
#
# def down_device_file():
#
# transport = paramiko.Transport(('192.168.50.34', 8022))
# transport.connect(username='root', password='O3OwTr(01{@sVhDL')
#
# sftp = paramiko.SFTPClient.from_transport(transport)
# sftp.put('/tmp/location.txt', '/tmp/sensoro/server.txt')
#
# # 检查有无上传成功
# ssh = paramiko.SSHClient()
# ssh._transport = transport
# stdin, stdout, stderr = ssh.exec_command('ls -al /tmp/sensoro/')
# print(str(stdout.read(), encoding='utf-8'))
#
# # 将remove_path 下载到本地 local_path
# sftp.get('/root/conf/bst_conf.json', '/Users/linyue/mywork/server_file/bst_conf.json')
#
# transport.close()
# print("3. over")
python ssh登录linux 上传和下载文件的更多相关文章
- 使用paramiko模块远程登录并上传或下载文件
1.paramiko安装 1)安装PyCrypto2.6 for Python 2.7 64bit.地址:http://www.voidspace.org.uk/python/modules.shtm ...
- 如何在SecureCRT中给linux上传和下载文件 安装redis
首先建立文件 /download sz和rz命令无法用.则用以下1.和2.3步骤 需要上传或者下载,需要使用rz和sz命令.如果linux上没有这两个命令工具,则需要先安装.可以使用yum安装.运 ...
- 如何在SecureCRT中给linux上传和下载文件
方法/步骤 需要上传或者下载,需要使用rz和sz命令.如果linux上没有这两个命令工具,则需要先安装.可以使用yum安装.运行命令yum install lrzsz. 安装完成后就可以使 ...
- linux上传、下载文件rz、sz命令
1.介绍 sz命令是利用ZModem协议来从linux服务器传送文件到本地,一次可以传送一个或多个文件.相对应的从本地上传文件到Linux服务器,可以使用rz命令. 2.参数说明 -a,以文本方式传输 ...
- 在SecureCRT中给linux上传和下载文件
下载:sz中的s意为send(发送),告诉客户端,我(服务器)要发送文件 send to cilent,就等同于客户端在下载. 上传:rz中的r意为received(接收),告诉客户端,我(服务器)要 ...
- linux上传与下载文件命令
//文件从Linux系统上传到其他系统. sz空格+文件名 //文件从其他系统下载到Linux系统. rz //之后会弹出路径选择框,选择文件,即可下载到当前路径.
- 每天一个linux命令(26)--用SecureCRT来上传和下载文件
用SSH管理Linux 服务器时经常需要远程与本地之间交互文件,而直接使用 SecureCRT 自带的上传下载功能无疑是最方便的,SecureCRT下的文件传输协议有ASCII.Xmodem.Zmod ...
- Linux学习笔记:使用ftp命令上传和下载文件
Linux中如何使用ftp命令,包括如何连接ftp服务器,上传or下载文件以及创建文件夹.虽然现在有很多ftp桌面应用(例如:FlashFXP),但是在服务器.SSH.远程会话中掌握命令行ftp的使用 ...
- 如何在Linux中使用sFTP上传或下载文件与文件夹
如何在Linux中使用sFTP上传或下载文件与文件夹 sFTP(安全文件传输程序)是一种安全的交互式文件传输程序,其工作方式与 FTP(文件传输协议)类似. 然而,sFTP 比 FTP 更安全;它通过 ...
随机推荐
- CocosCreator的ToggleGroup组件使用
用了CocosCreator也有一段时间,对ToggleGroup始终没有仔细的学习过,只停留在用过的水平.所以因为认识有限,所以以为ToggleGroup对自定义支持得没那么好,这两天因为项目,再学 ...
- Centos7安装jexus,部署asp.net core,asp.net mvc
什么是Jexus 官网解释:https://www.jexus.org/ Jexus是一款Linux平台上的高性能WEB服务器和负载均衡网关,Jexus Web Service,简称JWS,以支持AS ...
- “tar: Removing leading `/’ from member names”的错误
“tar: Removing leading `/’ from member names”的错误 使用tar打bz2压缩的时候报的错误,解决方案:加入参数: P (大写的屁) # tar -jcPf ...
- 依据ECMA规范,手写一个bind函数
Function.prototype.bind 函数,参见ECMA规范地址 如题,这次来实现一个boundFunction函数,不挂载在Function.prototype上,而是一个单独声明的函数. ...
- PHP filter_var 函数用法
先介绍下PHP Filter PHP手册地址:http://php.net/manual/zh/ref.filter.php PHP 过滤器用于对来自非安全来源的数据(比如用户输入)进行验证和过滤. ...
- ECMAScript6 入门教程记录 变量的解构赋值
(1)变量的解构赋值 基本用法:ES6 允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构(Destructuring). let a = 1; let b = 2; let c = ...
- [经验共享] MapGIS实用小功能图解——由excel文件导成MapGIS点文件
项目小组的几个成员都是学地下水和环境的,对于GIS懂得不是很多,于是把一些我们经常用到的mapgis实用小功能做成帮助文档,方便大家使用,发布共享! 1.整理好EXCEL文件(注意X,Y坐标的正确性( ...
- jmeter中文乱码及Unicode转中文
在测试的过程中传入中文测试,乱码问题 1.get请求传入中文参数address:中国云南省 request请求中已经正确显示参数(可能跟我之前配置过有关系),如果没有正确显示,在http取样器后面新建 ...
- Genymotion-Android模拟器提示"Unable to connect to the Genymotion server. Please check your Internet connection."解决方法
昨天刚装的Genymotion,昨晚还用得好好的. 今晚开机,重新打开Genymotion,却提示:"Unable to connect to the Genymotion server. ...
- Pytrhon结束死循环的子线程
Python在子线程无线循环的过程中,如果直接ctrl+c结束程序的话,虽然程序可以结束,但是会导致子线程资源无法回收,一般情况不会有太大影响,但是使用TCP通信的时候,子线程是占用特定的端口的,在资 ...