已知先有一个默认的xshell默认的session文件(叫default.xsh),现在有一批主机ip(存于ip.txt中),需要快速生成这些主机登录的session文件并放于xshell登录主机的目录下,利用python3实现
#!/usr/bin/env python3
#-*- coding:utf-8 -*-
import os,shutil,re
def mkdir(path):
path=path.strip()
path=path.rstrip("\\")
isExists=os.path.exists(path)
if not isExists:
os.makedirs(path)
print(path+' 创建成功')
return True
else:
print(path+' 目录已存在')
return False
fpath=input("请输入xshell工具的session创建路径(文件夹不存在则自动创建):\n")
mkdir(fpath)
iplist=open(".\\ip.txt",'r+',encoding='UTF-8',errors='ignore')
for ip in iplist:
ip=ip.strip()
p=re.compile('^((25[0-5]|2[0-4]\d|[01]?\d\d?)\.){3}(25[0-5]|2[0-4]\d|[01]?\d\d?)$')
if p.match(ip):
print(fpath+"\\"+ip+".xsh 生成成功")
shutil.copy(".\\default.xsh",fpath+"\\"+ip+".xsh")
f1 = open(fpath+"\\"+ip+".xsh",'r+', encoding='UTF-8')
infos = f1.readlines()
f1.seek(0,0)
for line in infos:
line_new = line.replace("xxx.xxx.xxx.xxx",ip)
f1.write(line_new)
f1.close()
else:
print(ip+"此行为空行或不是IP,已自动过滤")
iplist.close()
input("\nsession已生成完成,请按Enter键退出")
网友评论