1、paramiko 实现ssh 登录

import paramiko

# 实现ssh登录
ssh_client = paramiko.SSHClient()
ssh_client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
# 连接远程主机 ssh_client.connect(hostname='172.30.2.129',port=22,username='root',password='cy201061')
stdin,stdout,stderr = ssh_client.exec_command("free -m ")
res,err = stdout.read(),stderr.read()
result = res if res else err
print(result.decode())
ssh_client.close()

2、paramiko  实现简单的文件传输

#实现上传
transport = paramiko.Transport("172.30.2.129",22)
transport.connect(username="root",password="cy201061")
fptclient = paramiko.SFTPClient.from_transport(transport)
fptclient.put('11.txt','/tmp/test.txt')
fptclient.get('/root/.ssh/id_rsa','prive.txt')

3、paramiko   基于秘钥的免秘钥传输

# Author : xiajinqi

import paramiko
ssh_client = paramiko.SSHClient()
private_key = paramiko.RSAKey.from_private_key_file('prive.txt') ssh_client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
ssh_client.connect(hostname='172.30.2.130',port=22,username='root',pkey=private_key) stdin,stdout,stderr = ssh_client.exec_command("free -m ")
res,err = stdout.read(),stderr.read()
res = res if res else err
print(res.decode())
ssh_client.close()

4、线程和进程的区别

1、进程是资源管理调度的集合,进程要操作cpu,必须先创建一个线程
2、线程是 一串指令集合,是cpu能够调度的最小的单位。
3、同一个进程的不同线程共享同一块内存。不同进程之间内存之间是相互隔离的。即进程之间除父进程可以调用子进程意外不可以相互调用,线程之间可以相互调用共享数据。
4、一个进程至少有一个主线程,主线程可以创建多个子线程。
线程是平台的。A线程创建B线程,A不存在以后,B依旧可以继续运行,B可以继续创建其他线程。创建以后相互平台、独立的。
5、先有进程再有线程。 每个进程都有一个独立PID,内存是独立的。
6、创建新的线程很简单。创建新的进程需要copy父进程进行一次克隆(比喻内存)

5、简单多线程实例

import threading

def run(tt):
print("hello world") t1 = threading.Thread(target=run,args=('t1',))
t2 = threading.Thread(target=run,args=('t2',)) t1.run()
t2.run()

6、多线程时间测试案例

import threading
import time def run(i):
print("test %s"%(i))
time.sleep(2) for i in range(1,50):
t1 = threading.Thread(target=run,args=(i,))
t1.start() print("end") E:\Users\xiajinqi\PycharmProjects\Atm\venv\Scripts\python.exe E:/Users/xiajinqi/PycharmProjects/Atm/test3.py
test 1
test 2
test 3
test 4
test 5
test 6
test 7
test 8
test 9
test 10
test 11
test 12
test 13
test 14
test 15
test 16
test 17
test 18
test 19
test 20
test 21
test 22
test 23
test 24
test 25
test 26
test 27
test 28
test 29
test 30
test 31
test 32
test 33
test 34
test 35
test 36
test 37
test 38
test 39
test 40
test 41
test 42
test 43
test 44
test 45
test 46
test 47
test 48
test 49
end Process finished with exit code 07/

python paramiko模块和多线程讲解的更多相关文章

  1. Python Paramiko模块与MySQL数据库操作

    Paramiko模块批量管理:通过调用ssh协议进行远程机器的批量命令执行. 要使用paramiko模块那就必须先安装这个第三方模块,仅需要在本地上安装相应的软件(python以及PyCrypto), ...

  2. python paramiko模块学习分享

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

  3. Python paramiko 模块

    paramiko模块机遇SSH用于连接远程服务器并执行相关操作 SSHClient 用于连接远程服务器并执行基本命令 基于用户名密码连接: import paramiko # 创建SSH对象 ssh ...

  4. Python Paramiko模块

    代码来自:http://www.cnblogs.com/wupeiqi/articles/4356675.html 今天学到了一个运维方面的利器:python的paramiko模块. paramiko ...

  5. python paramiko模块简介

    一:简介 paramiko是用python语言写的一个模块,遵循SSH2协议,支持以加密和认证的方式,进行远程服务器的连接. 由于使用的是python这样的能够跨平台运行的语言,所以所有python支 ...

  6. python(nmap模块、多线程模块)

    http://xael.org/pages/python-nmap-en.html       nmap模块 http://www.tutorialspoint.com/python/python_m ...

  7. Python paramiko模块基本使用(一)

    使用paramiko模块登录远程主机,对日志进行统计分析. import paramiko def batch_count(days, hours, ips, user, passwd, source ...

  8. Python Paramiko模块安装和使用

    1.简介 大家会发现,常见的解决方法都会需要对远程服务器必要的配置,如果远程服务器只有一两台还好说,如果有N台,还需要逐台进行配置,或者需要使用代码进行以上操作时,上面的办法就不太方便了. 使用par ...

  9. python paramiko 模块简单介绍

    背景,公司的很多服务包括数据库访问都需要通过跳板机访问,为日常工作及使用带来了麻烦,特别数python直接操作数据更是麻烦了,所以一直想实现python 通过跳板机访问数据库的操作. 首先了解到了 p ...

随机推荐

  1. 理解 Java 正则表达式怪异的 \\ 和 \\\\,让您见怪不怪

    本文链接 https://unmi.cc/understand-java-regex-backslash/, 来自 隔叶黄莺 Unmi Blog Java 语言里的几大变革,一为 jdk1.4 引入的 ...

  2. Python学习---抽屉框架分析[小评论分析]0315

    注: 此处的小评论涉及数据库操作 初级小评论代码 settings.py INSTALLED_APPS = [ ... 'app01', # 注册app ] STATICFILES_DIRS = (o ...

  3. DZ拿shell总结

    今天碰到一个dz的站,好久没拿了 ,拿下shell觉得应该总结一下 Uc_server默认密码 其实有了UC_SERVER就是有了网站的全部权限了,有了UC_SERVER你可以重置管理员密码 可以进后 ...

  4. Java并发案例04---生产者消费者问题03--使用ReentrantLock

    /** * 面试题:写一个固定容量同步容器,拥有put和get方法,以及getCount方法, * 能够支持2个生产者线程以及10个消费者线程的阻塞调用 * * 使用wait和notify/notif ...

  5. 2018-2019-2 网络对抗技术 20165322 Exp3 免杀原理与实践

    2018-2019-2 网络对抗技术 20165322 Exp3 免杀原理与实践 目录 实验内容与步骤 正确使用msf编码器,msfvenom生成如jar之类的其他文件,veil-evasion,加壳 ...

  6. BZOJ1012:[JSOI2008]最大数maxnumber(线段树)

    Description 现在请求你维护一个数列,要求提供以下两种操作:1. 查询操作.语法:Q L 功能:查询当前数列中末尾L 个数中的最大的数,并输出这个数的值.限制:L不超过当前数列的长度.2. ...

  7. vim在插入模式粘贴代码缩进问题解决方法

    转载自:https://blog.csdn.net/commshare/article/details/6215088 在vim粘贴代码会出现缩进问题,原因在于vim在代码粘贴时会自动缩进 解决方法: ...

  8. programming-languages学习笔记--第4部分

    programming-languages学习笔记–第4部分 */--> pre.src {background-color: #292b2e; color: #b2b2b2;} program ...

  9. Shell笔记-01

    打开文本编辑器,新建一个文件,扩展名为sh(sh代表shell),扩展名并不影响脚本执行,见名知意就好,如果你用php写shell 脚本,扩展名就用php好了. 输入一些代码: #!/bin/bash ...

  10. linux内核netfilter连接跟踪的hash算法

    linux内核netfilter连接跟踪的hash算法 linux内核中的netfilter是一款强大的基于状态的防火墙,具有连接跟踪(conntrack)的实现.conntrack是netfilte ...