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 更安全;它通过 ...
随机推荐
- Carthage 让项目支持及使用,第三方静态库转为动态库
Carthage介绍 具体使用,可以查看官网的,文档地址 https://github.com/Carthage/Carthage.如果看不懂英文,可以看一下官文的翻译:https://www.jia ...
- java学习之方法内部类
*方法内部类 * 在类中的方法内定义一个类 * 注意: * 1 方法内部类只能在类的方法内实例化不可以在此方法外实例化 * 2 .方法内部类对象只能用所在方法体中的变量不能改,jdk1.8可以 * 以 ...
- (.NET高级课程笔记)反射总结
反射总结 1.dll-IL-matadata-反射 2.反射加载dll,获取module.类.方法.特性 3.反射创建对象:反射+简单工厂+配置文件 4.反射调用实例方法.静态方法.重载方法.私有方法 ...
- PPTP支持IPv6
pptp支持ipv6,谷歌资料不多,这里整理下 主要用来给ipv4访问ipv6资源的场景使用,客户端连接上pptp后会分配得到一个ipv6地址,通过此地址访问ipv6的资源 客户端网段在pptp. ...
- ECMAScript6 入门教程记录 变量的解构赋值
(1)变量的解构赋值 基本用法:ES6 允许按照一定模式,从数组和对象中提取值,对变量进行赋值,这被称为解构(Destructuring). let a = 1; let b = 2; let c = ...
- LR12集合点设置和多个负载生成器策略
今天给大家分享几个有关LR12的Controller使用过程中的几个常用问题: 一,脚本中添加集合点函数---lr_rendezvous 1,在被测接口事物函数之前加入集合点函数--lr_rendez ...
- css基础重点内容总结
一.目录引入 ./同级(当前) ../上级目录 ../../上上级目录 二.标签种类: 1.块级标签(block):独占一行,宽高可设: 2.行内块标签(inline-block):不独占一行,宽高 ...
- ss命令详解
ss是Socket Statistics的缩写.顾名思义,ss命令可以用来获取socket统计信息,它可以显示和netstat类似的内容.ss的优势在于它能够显示更多更详细的有关TCP和连接状态的信息 ...
- yum仓库源搭建
本地yum源搭建 cd源 mount /dev/sr0 /mnt vim /etc/yum.repos.d/base.repo [centos-base]name=centos7#baseurl=f ...
- 【源码】HashMap源码及线程非安全分析
最近工作不是太忙,准备再读读一些源码,想来想去,还是先从JDK的源码读起吧,毕竟很久不去读了,很多东西都生疏了.当然,还是先从炙手可热的HashMap,每次读都会有一些收获.当然,JDK8对HashM ...