#编辑者:闫龙
importos;
Menu= ["查询","添加","修改","删除"]whileTrue:for i inrange(len(Menu)):print(i+1,Menu[i]);
UserSelect= input("请选择您要操作的类型>>>:");if (UserSelect == "1") :
TitlesDic={};
count=0;
with open("haproxy.conf", mode="r+", encoding="utf8") as ConfFile:
ConfRead=ConfFile.readlines();for i inConfRead:if (noti[0].isspace()):
count+= 1;
TitlesDic[count]={};
TitlesDic[count][i.strip()]= "";
Titles=i.strip();else:
TitlesDic[count][Titles]+=i;for i inTitlesDic.keys():
k=list(dict(TitlesDic[i]).keys())[0]print(i,k);
UserSelect= input("请选择您要查询的字段>>>:");for i,j indict(TitlesDic[int(UserSelect)]).items():print(i+"\n",j);if(UserSelect == "2"):print("目前只能针对bakend字段进行添加操作")
bakend={}
com= "backend\t"+input("请输入域名:") + "\n"bakend[com]="";
bakend[com]+=("\tserver\t"+input("Server:")+"\t");
bakend[com]+=("weight\t"+input("weight:") + "\t");
bakend[com]+=("maxconn\t"+input("maxconn:") + "\n");
with open("haproxy.conf",mode="a+") as ConfFile:for i,j inbakend.items():
ConfFile.writelines(i+j);print("添加成功!")if(UserSelect == "3"):print("目前只能针对backend www.oldboy20.org字段进行修改操作")
bakend={}
WriteDic={};
com= "backend\t"+input("请输入域名:")
bakend[com]="";
bakend[com]+=("\tserver\t"+input("Server:")+"\t");
bakend[com]+=("weight\t"+input("weight:") + "\t");
bakend[com]+=("maxconn\t"+input("maxconn:") + "\n");
with open("haproxy.conf", mode="r+", encoding="utf8") as ConfFile:
ConfRead=ConfFile.readlines();for i inConfRead:if (noti[0].isspace()):
Titles=i.strip();
WriteDic[Titles]="";else:
WriteDic[Titles]+=i;
with open("haproxy.conf_new",mode="w+",encoding="utf8") as WriteNewFile:
WriteDic.pop("backend www.oldboy20.org")
WriteDic.update(bakend);for i,j inWriteDic.items():
WriteNewFile.writelines(i+"\n"+j);
os.rename("haproxy.conf","haproxy.conf_bak");
os.rename("haproxy.conf_new", "haproxy.conf");print("修改成功!")if(UserSelect == "4"):
TitlesDic={};
WriteDic={};
count=0;
with open("haproxy.conf", mode="r+", encoding="utf8") as ConfFile:
ConfRead=ConfFile.readlines();for i inConfRead:if (noti[0].isspace()):
count+= 1;
TitlesDic[count]={};
TitlesDic[count][i.strip()]= "";
Titles=i.strip();
WriteDic[Titles]="";else:
TitlesDic[count][Titles]+=i;
WriteDic[Titles]+=i;for i inTitlesDic.keys():
k=list(dict(TitlesDic[i]).keys())[0]print(i, k);
UserSelect= input("请选择您要删除的字段>>>:");
with open("haproxy.conf_new",mode="w+",encoding="utf8") as WriteNewFile:
WriteDic.pop(list(dict(TitlesDic[int(UserSelect)]).keys())[0])for i,j inWriteDic.items():
WriteNewFile.writelines(i+"\n"+j);
os.rename("haproxy.conf","haproxy.conf_bak");
os.rename("haproxy.conf_new", "haproxy.conf");print("删除成功");