python 用于循环,ping,文件检查,日志

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python 用于循环,ping,文件检查,日志相关的知识,希望对你有一定的参考价值。

import datetime
import time
import os
import glob
import pyodbc
import smtplib

# Revolution Design Workflow 2016

COMPS = ['\\\\ws780',
		'\\\\ws782', 
		'\\\\ws821', 
		'\\\\ws824', 
		'\\\\ws847',
		'\\\\ws857',
		'\\\\ws864',
		'\\\\ws867',
		'\\\\ws869',
		'\\\\ws872',
		'\\\\ws877',
		'\\\\ws878',
		'\\\\ws882',
		'\\\\ws883'
		]
rootC = '\\\\c$'
programFiles = '\\\\Program Files (x86)\\\\Revolution Design\\\\Workflow'
programData = '\\\\ProgramData\\\\Autodesk\\\\Revit\\\\Addins\\\\2016\\\\workFlow.addin'

logPath = 'D:\\\\Autodesk\\\\scripts\\\\RevolutionDesignWorkflow\\\\log.log'


for comp in COMPS:
	compName = comp[2:]
	response = os.system("ping -n 1 " + compName)
	if response == 0:
		print('Machine is online')
		addinDir = os.path.isdir(comp + rootC +programFiles)
		addinFile =  os.path.exists(comp + rootC + programData)
		with open(logPath, "a") as logger:
			timestamp = ' Timestamp:{:%Y-%b-%d %H:%M:%S}'.format(datetime.datetime.now())
			logger.write(compName + timestamp + '\n')
			logger.write(str(addinDir) + '\n')
			logger.write(str(addinFile) + '\n')
	else: 
		print('Machine is not online') 
		with open(logPath, "a") as logger:
			timestamp = ' Timestamp:{:%Y-%b-%d %H:%M:%S}'.format(datetime.datetime.now())
			logger.write(compName + timestamp + ' not online' + '\n')


以上是关于python 用于循环,ping,文件检查,日志的主要内容,如果未能解决你的问题,请参考以下文章

shell脚本:脚本分析汇总ping日志文件

在ansible中使用for循环从保存在主机服务器上的文件中获取IP地址并ping到那些IP服务器以检查它们是不是还活着

用于测试 ping 的 Python 函数

Python:检查 IRC 连接是不是丢失(PING PONG?)

ping IP 带时间戳循环显示并写入日志

需要一个批处理:一直ping一个ip地址,并且把ping的记过写入文本日志文件。且记录下每个ping不通的时间