首页 > 代码库 > python的简洁是shell无法代替的
python的简洁是shell无法代替的
之前线上服务器分发配置都是用shell和expect脚本分发,脚本写了很长,上周换了ansible,现在自己用python写一个,就30行代码就可以实现需求,之前的shell写了快200行了,蛋疼,代码如下:
from multiprocessing import Process import paramiko import sys file = sys.argv[1] Username = "root" Password = "123456" Dest_Path = [ "/data/x5online/%s" %file, "/tmp/%s" %file ] Port = 22 def sftpPut(ip): try: s = paramiko.Transport((ip,Port)) s.connect(username=Username,password=Password) sftp = paramiko.SFTPClient.from_transport(s) localFile = file for remoteFile in Dest_Path: sftp.put(localFile,remoteFile) print("%s put successful." %ip) except: print("%s not exits."%ip) def ipProcess(): for i in range(10,40): ip = ‘192.168.170.%s‘%i p = Process(target=sftpPut,args=(ip,)) p.start() if __name__ == ‘__main__‘: ipProcess()
鸡汤一回,对python感兴趣了,学的才快,就像去年对linux很痴迷,一年时间,现在的我是一家游戏公司的运维负责人。加油
python的简洁是shell无法代替的
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。