码迷,mamicode.com
首页 > 编程语言 > 详细

使用python脚本监控指定域名解析

时间:2016-12-20 21:34:18      阅读:344      评论:0      收藏:0      [点我收藏+]

标签:域名解析   python   python执行系统命令   

python脚本:

                                                                                                                 21,0-1        All
#!/usr/bin/python
# -*- coding: utf-8 -*-
#此脚本用于检测域名解析是否正常

import os

namelist = {‘www.51cto.com‘:‘218.11.0.91‘,‘www.51talk.com‘:‘60.205.82.82‘}

mail = [‘bliu@test.cn‘,‘smcao@test.cn‘]

def check_domain():
        ‘‘‘使用nslook域名解析并与字典ip对比,如果解析异常发邮件给指定收件人‘‘‘
        for i in namelist:
                address = os.popen("nslookup %s | grep -v ‘#53‘ | awk -F‘:‘ ‘/^Address/{print $2}‘" % i).read().strip()
                if (address == namelist[i]):
                        pass
                else:
                        for j in mail:
                                os.popen("echo ‘%s域名解析异常,请确认!‘| mail -s ‘%s域名解析异常‘ %s" %(i,i,j))
                                #os.popen括号中百分号后面的i,i,j分别是将python的指定变量传到shell命令中


check_domain()

小结:

上述python脚本中,需要将python中的某些变量传递给shell中引用,在此总结学习到的几种方法如下

实例1:

#!/usr/bin/python
# -*- coding: utf-8 -*-
import os
var = ‘test‘
os.environ[‘var‘] = str(var)  #environ的键值必须是字符串
os.system(‘echo $var‘)

实例2:

#!/usr/bin/python
# -*- coding: utf-8 -*-
import os
var = ‘test‘
os.system("echo %s" % var)

实例3:

#!/usr/bin/python
# -*- coding: utf-8 -*-
import os
var = ‘test‘
output = os.popen("echo %s" % var)
print output.read().strip()


本文出自 “Just do myself” 博客,请务必保留此出处http://liubin0505star.blog.51cto.com/5550456/1884233

使用python脚本监控指定域名解析

标签:域名解析   python   python执行系统命令   

原文地址:http://liubin0505star.blog.51cto.com/5550456/1884233

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!