python检测主机的连通性并记录到文件的实例


Posted in Python onJune 21, 2018

目录结构

ping_test/
├── bin
│ ├── ping.py
│ ├── ping_run.sh.origin
│ └── ping.sh
├── conf
│ └── ip.lst
├── logs
│ ├── 10.10.37.196_2017-06-28_ping.log
│ └── 10.10.62.229_2017-06-28_ping.log
└── README.md

代码

cat bin/ping.py

#!/usr/bin/env python
#-*- coding: utf-8

from subprocess import Popen, PIPE
import shlex
import time
import datetime
import sys, os

basedir = os.path.dirname( os.path.dirname( os.path.abspath(__file__) ) )
cnf = os.path.join( basedir, 'conf', 'ip.lst' )
# print cnf

while True:
 today = datetime.datetime.strftime( datetime.datetime.now(), "%Y-%m-%d" )
 with open(cnf) as f:
  for host in f:
   host = host.strip()
   cmd = 'sh ping.sh %s' % host
   args = shlex.split(cmd)
   p = Popen(args, stdout=PIPE, stderr=PIPE)
   stdout, stderr = p.communicate()

   filename = host + '_%s_ping.log' % today
   logfile = os.path.join(basedir, 'logs', filename)
   # print logfile

   if stdout:
    with open(logfile, 'ab') as fd:
     fd.write( stdout )
     fd.flush()
   elif stderr:
    print('ping lost')
 time.sleep(1)

cat ping.sh

#!/bin/bash

HOST=$1
ping -c 1 ${HOST} | grep 'bytes from' | awk '{print $0"\t" strftime("%T %F", systime())}'

以上这篇python检测主机的连通性并记录到文件的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
400多行Python代码实现了一个FTP服务器
May 10 Python
Python(Tornado)模拟登录小米抢手机
Nov 12 Python
Python函数参数类型*、**的区别
Apr 11 Python
儿童学习python的一些小技巧
May 27 Python
wxPython绘图模块wxPyPlot实现数据可视化
Nov 19 Python
pytorch 模拟关系拟合——回归实例
Jan 14 Python
使用PyTorch实现MNIST手写体识别代码
Jan 18 Python
python matplotlib.pyplot.plot()参数用法
Apr 14 Python
Python如何自动获取目标网站最新通知
Jun 18 Python
Python selenium键盘鼠标事件实现过程详解
Jul 28 Python
Python利用folium实现地图可视化
May 23 Python
python可视化大屏库big_screen示例详解
Nov 23 Python
Python基于xlrd模块操作Excel的方法示例
Jun 21 #Python
python实现自动发送报警监控邮件
Jun 21 #Python
Python中list查询及所需时间计算操作示例
Jun 21 #Python
python监控文件并且发送告警邮件
Jun 21 #Python
python3实现磁盘空间监控
Jun 21 #Python
Python实现的远程登录windows系统功能示例
Jun 21 #Python
python3监控CentOS磁盘空间脚本
Jun 21 #Python
You might like
我的论坛源代码(五)
2006/10/09 PHP
php MySQL与分页效率
2008/06/04 PHP
Ajax+PHP 边学边练之四 表单
2009/11/27 PHP
php 图片加水印与上传图片加水印php类
2010/05/12 PHP
php中计算中文字符串长度、截取中文字符串的函数代码
2011/08/09 PHP
Apache下禁止php文件被直接访问的解决方案
2013/04/25 PHP
php实现爬取和分析知乎用户数据
2016/01/26 PHP
javascript 操作Word和Excel的实现代码
2009/10/26 Javascript
jquery插件制作 表单验证实现代码
2012/08/17 Javascript
用函数模板,写一个简单高效的 JSON 查询器的方法介绍
2013/04/17 Javascript
JavaScript AOP编程实例
2015/06/16 Javascript
nodejs爬虫抓取数据之编码问题
2015/07/03 NodeJs
JavaScript实现表格快速变色效果代码
2015/08/19 Javascript
Jquery+Ajax+PHP+MySQL实现分类列表管理(上)
2015/10/28 Javascript
JS实现的3D拖拽翻页效果代码
2015/10/31 Javascript
jQuery easyUI datagrid 增加求和统计行的实现代码
2016/06/01 Javascript
Vue报错:Uncaught TypeError: Cannot assign to read only property’exports‘ of object’#‘的解决方法
2017/06/17 Javascript
关于自定义Egg.js的请求级别日志详解
2018/12/12 Javascript
如何基于原生javaScript生成带图片的二维码
2019/11/21 Javascript
JS如何寻找数组中心索引过程解析
2020/06/01 Javascript
微信小程序地图实现展示线路
2020/07/29 Javascript
python实现的DES加密算法和3DES加密算法实例
2015/06/03 Python
pyqt5自定义信号实例解析
2018/01/31 Python
Python爬虫设置代理IP(图文)
2018/12/23 Python
自定义Django Form中choicefield下拉菜单选取数据库内容实例
2020/03/13 Python
python输出结果刷新及进度条的实现操作
2020/07/13 Python
Python pathlib模块使用方法及实例解析
2020/10/05 Python
python sleep和wait对比总结
2021/02/03 Python
button在IE6/7下的黑边去除方案
2012/12/24 HTML / CSS
Vero Moda西班牙官方购物网站:丹麦BESTSELLER旗下知名女装品牌
2018/04/27 全球购物
技术总监个人的自我评价范文
2013/12/18 职场文书
初中女生自我鉴定
2013/12/19 职场文书
庆中秋节主题活动方案
2014/02/03 职场文书
珠宝店促销方案
2014/03/21 职场文书
2015年父亲节活动总结
2015/02/12 职场文书
python开发实时可视化仪表盘的示例
2021/05/07 Python