python检测主机的连通性并记录到文件的实例
目录结构
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
代码
catbin/ping.py
#!/usr/bin/envpython
#-*-coding:utf-8
fromsubprocessimportPopen,PIPE
importshlex
importtime
importdatetime
importsys,os
basedir=os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
cnf=os.path.join(basedir,'conf','ip.lst')
#printcnf
whileTrue:
today=datetime.datetime.strftime(datetime.datetime.now(),"%Y-%m-%d")
withopen(cnf)asf:
forhostinf:
host=host.strip()
cmd='shping.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)
#printlogfile
ifstdout:
withopen(logfile,'ab')asfd:
fd.write(stdout)
fd.flush()
elifstderr:
print('pinglost')
time.sleep(1)
catping.sh
#!/bin/bash
HOST=$1
ping-c1${HOST}|grep'bytesfrom'|awk'{print$0"\t"strftime("%T%F",systime())}'
以上这篇python检测主机的连通性并记录到文件的实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持毛票票。
热门推荐
1 训练狗狗憋尿
2 狗狗追踪训练
3 狗狗训练要多少钱
5 深圳狗狗训练
6 训练狗狗唤回
7 狗狗叫怎么训练
8 狗狗训练班
10 狗狗社会化训练
11 狗狗叫回训练
12 广州狗狗训练学校
13 狗狗训练躺下
14 狗狗随行训练
15 训练狗狗巡回
16 狗狗要怎么训练
17 狗狗喂食训练
18 训练狗狗躺下