python自动化第九篇:进程,线程,协程
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python自动化第九篇:进程,线程,协程相关的知识,希望对你有一定的参考价值。
简要:
- 进程与线程
- python GIL全局解释器锁
一、PARAMIKO模块
- 实现远程ssh执行命令
#!/usr/bin/env python # -*- coding:utf-8 -*- #Author:wanghui import paramiko ssh = paramiko.SSHClient() #创建ssh对象 ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) #允许连接不在know_hosts文件中的主机 ssh.connect(hostname=‘192.168.1.102‘,port=22,username=‘wanghui‘,password=‘123456‘) #开始连接服务器 stdin,stdout,stderr = ssh.exec_command(‘df‘) #执行命令 #resault = stdout.read() #收集命令执行结果 #print(resault.decode()) #三元运算实现 res,err = stdout.read(),stderr.read() resault = res if res else err print(resault.decode()) ssh.close() #关闭连接
- 远程传输文件
#!/usr/bin/env python # -*- coding:utf-8 -*- #Author:wanghui import paramiko transport = paramiko.Transport((‘10.70.18.2‘,22)) #创建传输对象 transport.connect(username=‘root‘,password=‘abc/123‘) #登录认证 sftp = paramiko.SFTPClient.from_transport(transport) #创建sftp对象 sftp.put(‘test‘,‘/opt/ssh_transe.txt‘) #上传文件到/opt下,存放名称改为ssh_transe.py sftp.get(‘/opt/ssh_transe.txt‘,‘test2‘) #下在文件到当前目录下并改名为test2 transport.close() #关闭连接
- 使用密钥ssh链接远程机执行命令
#!/usr/bin/env python # -*- coding:utf-8 -*- #Author:wanghui import paramiko
private_key = paramiko.RSAKey.from_private_key_file(‘id_rsa‘) #创建私钥对象,指定私钥文件 ssh = paramiko.SSHClient() #实例化ssh ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) #自动添加到对方的know_hosts文件 ssh.connect(hostname=‘10.70.18.2‘,port=22,username=‘root‘,pkey=private_key) #使用私钥链接机器 stdin,stdout,stderr = ssh.exec_command(‘ls /opt‘) #执行第一条命令 resault = stdout.read() print(resault.decode()) stdin,stdout,stderr = ssh.exec_command(‘df‘) #执行第二条命令 resault1 = stdout.read() print(resault1.decode()) ssh.close()
- 使用密钥sftp收发文件
#!/usr/bin/env python # -*- coding:utf-8 -*- #Author:wanghui import paramiko private_key=paramiko.RSAKey.from_private_key_file(‘id_rsa‘) #创建私钥对象,指定私钥文件 transport = paramiko.Transport((‘10.70.18.2‘,22)) #创建传输对象 transport.connect(username=‘root‘,pkey=private_key) #指定用户和私钥连接 sftp= paramiko.SFTPClient.from_transport(transport) #创建sftp实例 #sftp.put(‘test2‘,‘/opt/ssss‘) #上传文件 sftp.get(‘/opt/ssss‘,‘message.txt‘) #下载文件
以上是关于python自动化第九篇:进程,线程,协程的主要内容,如果未能解决你的问题,请参考以下文章