批量生成db(record)文件示例

批量写入

进一阶示例

  • 当前是追加模式,运行一次会不停地往文件中追加,重写可删除文件
def genaratedbadd(filename,strdemo='stringin',ptpstr='PtpInstancePeerMac_1_1',inpstr='INP',wrsstr='wrsPtpInstancePee rMac.1.1',numstr='40'):
    filetxt = 'record (' + strdemo + ', "$(DEV)' + ptpstr + '")' + '\n'
    filetxt += '{' + '\n'
    filetxt += 'field (DESC, "SNMP channel")' + '\n'
    filetxt += 'field(DTYP, "Snmp" )' + '\n'
    filetxt += 'field(SCAN, ".5 second" )' + '\n'
    filetxt += 'field(' + inpstr + ', "@$(HOST) private $(MIB)::'+ wrsstr + '  STRING: ' + numstr + '" )' + '\n'
    filetxt += '}' + '\n' + '\n'
    with open(filename,mode='a') as f:
        f.write(filetxt)

#同一文件名下追加,写入'wrsPtpInstancePee rMac.1.1' 'wrsPtpInstancePee rMac.1.2' 'wrsPtpInstancePee rMac.1.3' 示例,其他的写法相近
filename = 'E:/BaiduSyncdisk/SXFEL/study/softcenter-redmibook14/study/test_write/xiaotest.db'

wrsstrs = ['wrsPtpInstancePee rMac.1.%i' %i for i in range(1,4)]
[genaratedbadd(filename,wrsstr=wrsstr) for wrsstr in wrsstrs]

#同一文件名下追加写入不同的'longin', 'longout', 'stringin' 可以参考如下示例
filename = 'E:/BaiduSyncdisk/SXFEL/study/softcenter-redmibook14/study/test_write/xiaotest.db'

strdemos = ['longin', 'longout', 'stringin']
[genaratedbadd(filename,strdemo=strdemo) for strdemo in strdemos]

#你也可以嵌套遍历
[genaratedbadd(filename,strdemo=strdemo,wrsstr=wrsstr) for strdemo in strdemos for wrsstr in wrsstrs]


#名字对应示例
wrsstrs = ['wrsPtpInstancePee rMac.%i.%i' %(i,j) for i in range(2,7) for j in range(1,11)]
ptpstrs = ['PtpInstancePeerMac_%i_%i' %(i,j) for i in range(2,7) for j in range(1,11)]
[genaratedbadd(filename,ptpstr=ptpstrs[i],wrsstr=wrsstrs[i]) for i in range(len(wrsstrs))]

基础示例

for i in range(7):
    filename = 'E:/BaiduSyncdisk/SXFEL/study/softcenter-redmibook14/study/test_write/xiao' + str(i) + '.db'
    # print(filename)
    for strdemo in ['longin', 'longout', 'stringin']:
        filetxt = 'record (' + strdemo + ', "$ (DEV) PtpInstancePeerMac_1_1")' + '\n'
        filetxt += '{' + '\n'
        filetxt += 'field (DESC,"SNMP channel")' + '\n'
        filetxt += 'field(DTYP,"Snmp" )' + '\n'
        filetxt += 'field(SCAN,".5 second" )' + '\n'
        filetxt += 'field(INP , "@$ (HOST) private $(MIB) : :wrsPtpInstancePee rMac.1.1' + '\n'
        filetxt += 'STRING: 40" )' + '\n'
        filetxt += '}' + '\n'
        with open(filename,mode='a') as f:
            f.write(filetxt)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值