这篇文章运用了实例代码展示paramiko实现远程配置软件脚本,代码非常详细,可供感兴趣的小伙伴们参考借鉴,希望对大家有所帮助。
#,- *安康;编码:utf-8 - * - import paramiko import 系统,操作系统 import datetime import 子流程 import 时间 import 再保险 import hashlib 重载(系统) sys.setdefaultencoding (“utf-8") os.environ [“PATH"],=,“/usr/地方/jdk18/bin:/usr/地方/sbin:/usr/地方/bin:/sbin:/bin:/usr/sbin:/usr/bin:/根/bin" os.environ [“LANG"],=,“en_US.UTF-8" ip_list =, (“10.110.189.217",“10.110.193.106"] class pub_filebeat (): ,,,def __init__(自我): ,,,,,,,self.username =,“redis" ,,,,,,,self.passwd =,“123456”; ,,,,,,,self.client_ssh =,没有 ,,,,,,,self.sftpcliet =,没有 ,,,,,,,self.port =22 ,,,,,,,self.chan =,没有 ,,,,,,,self.result =,没有 ,,,#,创建一个ssh 链接 ,,,def create_ssh(自我、ip): ,,,,,,,self.client_ssh =, paramiko.SSHClient () ,,,,,,,self.client_ssh.set_missing_host_key_policy (paramiko.AutoAddPolicy ()) ,,,,,,,self.client_ssh.connect (self.port, ip,还以为,self.username, self.passwd,,超时=5) ,,,,,,,self.chan =, self.client_ssh.invoke_shell () ,,,,,,,self.flag=没有 ,,,,,,,& # 39;& # 39;& # 39;, ,,,,,,,在现有的ssh链接的基础上获取一个ftp链接 ,,,,,,,方式一,,,: ,,,,,,,transport =, self.client_ssh.get_transport () ,,,,,,,self.sftpcliet =, paramiko.SFTPClient.from_transport(运输) ,,,,,,, ,,,,,,,方式二,: ,,,,,,,self.sftpcliet =, self.client_ssh.open_sftp () ,,,,,,,& # 39;& # 39;& # 39; ,,,,,,# ,,,,,,,#,transport =, self.client_ssh.get_transport () ,,,,,,,#,self.sftpcliet =, paramiko.SFTPClient.from_transport(运输) ,,,,,,,self.sftpcliet =, self.client_ssh.open_sftp () ,,,def 执行(自我、ip): ,,,,,,,试一试: ,,,,,,,,,,,self.sendcmd (“, sudo su 作用;“) ,,,,,,,,,,,if self.flag ==, 1: ,,,,,,,,,,,,,,,self.sendcmd (“redis@yto369") ,,,,,,,,,,,self.sendcmd (“, cd /home/redis “) ,,,,,,,,,,,self.sendcmd (“, tar , -zxvf filebeat623.tar.gz “) ,,,,,,,,,,,self.sendcmd (“, sed 小姐;& # 39;s/hostip:, 10.1.241.99/hostip:, % s/舌鳎# 39;,filebeat623/filebeat.yml ;,,, %, (ip)) ,,,,,,,,,,,self.sendcmd (“, nohup filebeat623/filebeat -e , -c filebeat623/filebeat.yml 祝辞,info.log 2祝辞,1,,,,) ,,,,,,,,,,,print “% s filebeat 部署完成“,%,(ip) ,,,,,,,except 例外,e: ,,,,,,,,,,,print e.message ,,,def tranfile(自我): ,,,,,,,试一试: ,,,,,,,,,,,self.sftpcliet.put (“F: \ dwchaoyue \麋鹿\/filebeat623.tar.gz",, & # 39;/home/复述filebeat623.tar.gz& # 39;) ,,,,,,,except 例外,e: ,,,,,,,,,,,print e.message null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null null nullparamiko实现远程配置软件脚本