python2.7自动创建虚拟机
发布时间:2020-12-17 17:29:45 所属栏目:Python 来源:网络整理
导读:今天PHP站长网 52php.cn把收集自互联网的代码分享给大家,仅供参考。 # -*- coding: cp936 -*-#jk409 于2014-8-27用python2.7编写的批量复制文件和修改虚拟机配置文件的脚本import os,os.path,shutilimport re,timeclass
以下代码由PHP站长网 52php.cn收集自互联网 现在PHP站长网小编把它分享给大家,仅供参考 # -*- coding: cp936 -*- #jk409 于2014-8-27用python2.7编写的批量复制文件和修改虚拟机配置文件的脚本 import os,os.path,shutil import re,time class main: def __init__(self,name,drive,sysos): self.name = name self.drive = drive self.dst_dir = self.drive+':'+self.name+'' self.dst_file = self.dst_dir+self.name self.src_name = sysos self.src_dir = '.'+self.src_name+'' self.src_file = self.src_dir+self.src_name #self.dir=os.path.dirname(self.dst_file) def copy_file(self): if (os.path.exists(self.dst_dir) == False): os.makedirs(self.dst_dir) print '开始创建虚拟机,请稍等......' try: #shutil.copytree(self.src_dir,self.dst_dir) shutil.copyfile(self.src_file+'-0.vmdk',self.dst_file+'-0.vmdk') shutil.copyfile(self.src_file+'.vmdk',self.dst_file+'.vmdk') shutil.copyfile(self.src_file+'.vmxf',self.dst_file+'.vmxf') shutil.copyfile(self.src_file+'.vmsd',self.dst_file+'.vmsd') shutil.copyfile(self.src_file+'.nvram',self.dst_file+'.nvram') except Exception as err: print (err) else: print self.dst_dir,'is Exists !' def mode_file(self): #self.dst_file.replace('93.101',self.name) f=file(self.src_file+'.vmx','r') f1=open(self.dst_file+'.vmx','w') for f2 in f.readlines(): f1.write(f2.replace(self.src_name,self.name)) #print(f2.replace('93.101',self.name)) f1.close() f.close() print self.name,'虚拟机已创建成功!' while 1: print ''' 1.创建单个虚拟机 2.创建多个虚拟机 3.退出(quit) ''' chioce=raw_input("您的选择[1/2/3]:") if chioce == '3' or chioce == 'quit': exit(0) if chioce == '': print '输入错误,请重新输入......' time.sleep(2) continue; sysos=raw_input('请选择你要按照的系统:[windos2003/centos6]:') if chioce == '1': while 1: ip=raw_input('请输入虚拟机名称:') name = ip if ip == 'quit': break; i=int(ip.split('.')[1]) if i%2 == 1: drive='E'; if i%2 == 0: drive='F'; main(name,sysos).copy_file() main(name,sysos).mode_file() if chioce == '2': ip=raw_input('请输入开始IP地址的后2段以及结束IP最后一段[*.*-*]:') ip00=ip.split('-')[0] ip01=ip00.split('.')[0] ip02=ip00.split('.')[1] print ip02 ip03=ip.split('-')[1] for i in range(int(ip02),int(ip03),1): if i%2 == 1: name=ip01+'.'+str(i) drive='E' if i%2 == 0: name=ip01+'.'+str(i) drive='F' print name main(name,sysos).mode_file() 以上内容由PHP站长网【52php.cn】收集整理供大家参考研究 如果以上内容对您有帮助,欢迎收藏、点赞、推荐、分享。 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |